Projects
Multimedia
gpodder3
Sign Up
Log In
Username
Password
We truncated the diff of some files because they were too big. If you want to see the full diff for every file,
click here
.
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 19
View file
gpodder3.changes
Changed
@@ -1,4 +1,11 @@ ------------------------------------------------------------------- +Mon Jan 8 06:58:15 UTC 2018 - fridrich.strba@bluewin.ch + +- Update to 3.9.6 + * Current latest release from the Python 2, Gtk+2 and PyGTK + branch. + +------------------------------------------------------------------- Tue Nov 14 22:59:36 UTC 2017 - zaitor@opensuse.org - Add conditional for python-eyeD3 BuildRequires and Requires, no
View file
gpodder3.spec
Changed
@@ -1,7 +1,7 @@ # # spec file for package gpodder3 # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2012 Pascal Bleser <pascal.bleser@opensuse.org> # # All modifications and additions to the file contributed by third parties @@ -18,13 +18,13 @@ Name: gpodder3 -Version: 3.9.3 +Version: 3.9.6 Release: 0 Summary: A free podcast aggregator for Linux License: GPL-3.0+ Group: Productivity/Multimedia/Sound/Players -Url: http://gpodder.org -Source: http://gpodder.org/src/gpodder-%{version}.tar.gz +URL: http://gpodder.org +Source: https://github.com/gpodder/gpodder/archive/%{version}.tar.gz Source99: gpodder3-rpmlintrc BuildRequires: ImageMagick # not actually needed, but to make the build fail if the runtime @@ -39,12 +39,9 @@ BuildRequires: lame BuildRequires: libgpod-python BuildRequires: python-devel -%if 0%{?suse_version} < 1330 -BuildRequires: python-eyeD3 -%endif -BuildRequires: python-podcastparser BuildRequires: python-gtk BuildRequires: python-mygpoclient >= 1.4 +BuildRequires: python-podcastparser BuildRequires: python-pymad BuildRequires: update-desktop-files BuildRequires: vorbis-tools @@ -52,18 +49,19 @@ Requires: dbus-1-python Requires: lame Requires: libgpod-python -%if 0%{?suse_version} < 1330 -Requires: python-eyeD3 -%endif -Requires: python-podcastparser Requires: python-gtk Requires: python-mygpoclient >= 1.4 +Requires: python-podcastparser Requires: python-pymad Requires: vorbis-tools Conflicts: gpodder < 3.0.0 -BuildRoot: %{_tmppath}/%{name}-%{version}-build -%py_requires BuildArch: noarch +%if 0%{?suse_version} < 1330 +BuildRequires: python-eyeD3 +%endif +%if 0%{?suse_version} < 1330 +Requires: python-eyeD3 +%endif %description gPodder manages Podcasts for you and automatically downloads selected episodes @@ -107,7 +105,6 @@ %find_lang gpodder %files -f gpodder.lang -%defattr(-,root,root) %doc COPYING README %{_bindir}/gpo %{_bindir}/gpodder
View file
3.9.6.tar.gz/.gitignore
Added
@@ -0,0 +1,5 @@ +*.pyc +__pycache__ +src/dbus +src/mygpoclient +src/podcastparser.py
View file
3.9.6.tar.gz/.travis.yml
Added
@@ -0,0 +1,25 @@ +language: python +dist: trusty +sudo: required +python: + - "2.7" +install: + - sudo apt-get update -q + - sudo apt-get install intltool desktop-file-utils wine mingw-w64-i686-dev binutils-mingw-w64-i686 gcc-mingw-w64 xvfb + - pip install coverage minimock + - python tools/localdepends.py +script: + - make releasetest + - make -C tools/win32-setup + - make -C tools/win32-portable +deploy: + provider: releases + api_key: + secure: "huPoTQRwhXZVD45JSBnCgtrzofpcotXShBWk9FYH2MOFwXQHRbp2ueaD0rxQxHNBTBXQDnOX+OQMnh99peYlxB1bPAx6LUMBgtesxvsUc3T5m7yZvqXyDBhjIBycYwxG0fBrnxEokaJKQDnZ4S/cKmk766iwhyGr66s+l9UBD/Y=" + file: + - tools/win32-setup/gpodder-*-setup.exe + - tools/win32-portable/gpodder-*-win32.zip + file_glob: true + on: + tags: true + skip_cleanup: true
View file
gpodder-3.9.3.tar.gz/README -> 3.9.6.tar.gz/README
Changed
@@ -2,13 +2,13 @@ ___ _ _ ____ __ _| _ \___ __| |__| |___ _ _ |__ / / _` | _/ _ \/ _` / _` / -_) '_| |_ \ - \__, |_| \___/\__,_\__,_\___|_| |___/ + \__, |_| \___/\__,_\__,_\___|_| |___/.9 (Python 2 / PyGTK) |___/ Media aggregator and podcast client ............................................................................ - Copyright 2005-2016 Thomas Perl and the gPodder Team + Copyright 2005-2017 Thomas Perl and the gPodder Team [ LICENSE ] @@ -30,7 +30,7 @@ [ DEPENDENCIES ] - - Python 2.7 or newer http://python.org/ + - Python 2.7.9 or newer http://python.org/ - Podcastparser 0.6.0 or newer http://gpodder.org/podcastparser/ - mygpoclient 1.7 or newer http://gpodder.org/mygpoclient/ - Python D-Bus bindings @@ -130,11 +130,6 @@ make install DESTDIR=tmp/ PREFIX=/usr/local/ - [ PYTHON 3 SUPPORT ] - - For Python 3 support, we recommend you use gPodder 4.x for now. - - [ PORTABLE MODE / ROAMING PROFILES ] The run-time environment variable GPODDER_HOME is used to set @@ -215,5 +210,5 @@ - IRC channel #gpodder on irc.freenode.net ............................................................................ - Last updated: 2016-11-30 by Thomas Perl <thp.io/about> + Last updated: 2017-12-29 by Thomas Perl <thp.io/about>
View file
gpodder-3.9.3.tar.gz/bin/gpo -> 3.9.6.tar.gz/bin/gpo
Changed
@@ -3,7 +3,7 @@ # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -747,7 +747,7 @@ def _shell(self): safe_print(os.linesep.join(x.strip() for x in (""" - gPodder %(__version__)s "%(__relname__)s" (%(__date__)s) - %(__url__)s + gPodder %(__version__)s (%(__date__)s) - %(__url__)s %(__copyright__)s License: %(__license__)s
View file
gpodder-3.9.3.tar.gz/bin/gpodder -> 3.9.6.tar.gz/bin/gpodder
Changed
@@ -3,7 +3,7 @@ # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -60,7 +60,6 @@ src_dir = os.path.join(prefix, 'src') locale_dir = os.path.join(prefix, 'share', 'locale') ui_folder = os.path.join(prefix, 'share', 'gpodder', 'ui') - credits_file = os.path.join(prefix, 'share', 'gpodder', 'credits.txt') images_folder = os.path.join(prefix, 'share', 'gpodder', 'images') icon_file = os.path.join(prefix, 'share', 'icons', 'hicolor', 'scalable', 'apps', 'gpodder.svg') @@ -90,7 +89,6 @@ # Set up paths to folder with GtkBuilder files and gpodder.svg gpodder.ui_folders.append(ui_folder) - gpodder.credits_file = credits_file gpodder.images_folder = images_folder gpodder.icon_file = icon_file @@ -114,6 +112,7 @@ options, args = parser.parse_args(sys.argv) gpodder.ui.gtk = True + gpodder.ui.python2 = True gpodder.ui.unity = (os.environ.get('DESKTOP_SESSION', 'unknown').lower() in ('ubuntu', 'ubuntu-2d'))
View file
gpodder-3.9.3.tar.gz/bin/gpodder-migrate2tres -> 3.9.6.tar.gz/bin/gpodder-migrate2tres
Changed
@@ -3,7 +3,7 @@ # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/makefile -> 3.9.6.tar.gz/makefile
Changed
@@ -1,6 +1,6 @@ # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/po/ca.po -> 3.9.6.tar.gz/po/ca.po
Changed
@@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -18,86 +18,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "" @@ -111,6 +107,11 @@ msgid "Remove %s" msgstr "" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "" + #: src/gpodder/directory.py:95 msgid "gpodder.net search" msgstr "" @@ -224,7 +225,7 @@ msgid "%s closed" msgstr "" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "" @@ -262,7 +263,7 @@ msgid "Wrong username/password" msgstr "" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "" @@ -316,834 +317,830 @@ msgid "Command: %s" msgstr "" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "" + +#: src/gpodder/gtkui/shownotes.py:118 +msgid "Please select an episode" +msgstr "" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s" +msgstr ""
View file
gpodder-3.9.3.tar.gz/po/cs.po -> 3.9.6.tar.gz/po/cs.po
Changed
@@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -18,12 +18,7 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -#: src/gpodder/config.py:55 -#, fuzzy, python-format -msgid "gPodder on %s" -msgstr "gPodder nalezl %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" @@ -31,19 +26,19 @@ msgstr[1] "" msgstr[2] "" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Dnes" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Včera" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(neznámý)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" @@ -51,7 +46,7 @@ msgstr[1] "" msgstr[2] "" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" @@ -59,7 +54,7 @@ msgstr[1] "" msgstr[2] "" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" @@ -67,42 +62,43 @@ msgstr[1] "" msgstr[2] "" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Popis není dostupný" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 #, fuzzy msgid "unknown" msgstr "(neznámý)" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "" @@ -116,6 +112,11 @@ msgid "Remove %s" msgstr "Odstranit %s?" +#: src/gpodder/config.py:55 +#, fuzzy, python-format +msgid "gPodder on %s" +msgstr "gPodder nalezl %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -239,7 +240,7 @@ msgid "%s closed" msgstr "%s je uzamčeno" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, fuzzy, python-format msgid "Adding %s..." msgstr "Přidávání %s" @@ -281,7 +282,7 @@ msgid "Wrong username/password" msgstr "" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 #, fuzzy msgid "Downloading" msgstr "stahování" @@ -339,25 +340,156 @@ msgid "Command: %s" msgstr "Příkazový řádek:" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, fuzzy, python-format +msgid "from %s" +msgstr "<i>z %s</i>" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Vybrat epizody" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Celé číslo" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Desetinné číslo" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Pravdivostní hodnota" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Textový řetězec" + +#: src/gpodder/gtkui/model.py:68 +#, fuzzy, python-format +msgid "released %s" +msgstr "Vyšlo" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +#, fuzzy +msgid "played" +msgstr "Nepřehrané" + +#: src/gpodder/gtkui/model.py:82 +#, fuzzy +msgid "unplayed" +msgstr "Nepřehrané" +
View file
gpodder-3.9.3.tar.gz/po/cs_CZ.po -> 3.9.6.tar.gz/po/cs_CZ.po
Changed
@@ -12,7 +12,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -23,12 +23,7 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder na %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" @@ -36,19 +31,19 @@ msgstr[1] "Před %(count)d dny" msgstr[2] "Před %(count)d dny" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Dnes" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Včera" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(neznámo)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" @@ -56,7 +51,7 @@ msgstr[1] "%(count)d sekundy" msgstr[2] "%(count)d sekund" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" @@ -64,7 +59,7 @@ msgstr[1] "%(count)d hodiny" msgstr[2] "%(count)d hodin" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" @@ -72,41 +67,42 @@ msgstr[1] "%(count)d minuty" msgstr[2] "%(count)d minut" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "a" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Popis není k dispozici" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "neznámý" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Dokončeno" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "Výchozí" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "Zachovat pouze poslední" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Jiný" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Video" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audio" @@ -120,6 +116,11 @@ msgid "Remove %s" msgstr "Odebrat %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder na %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -240,7 +241,7 @@ msgid "%s closed" msgstr "%s zavřen" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Přidávání %s..." @@ -278,7 +279,7 @@ msgid "Wrong username/password" msgstr "Špatné jméno/heslo" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Stahování" @@ -332,23 +333,136 @@ msgid "Command: %s" msgstr "Příkaz: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Výchozí aplikace" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "od %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Vybrat epizody" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Celé číslo" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Desetinné číslo" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Logická hodnota" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Řetězec" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "vydáno %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "přehráno" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "nepřehráno" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "dnes"
View file
gpodder-3.9.3.tar.gz/po/da.po -> 3.9.6.tar.gz/po/da.po
Changed
@@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -21,86 +21,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder på %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "for %(count)d dag siden" msgstr[1] "for %(count)d dage siden" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "I dag" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "I går" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(ukendt)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d sekund" msgstr[1] "%(count)d sekunder" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d time" msgstr[1] "%(count)d timer" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minut" msgstr[1] "%(count)d minutter" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "og" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Ingen tilgængelig beskrivelse" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "ukendt" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Afsluttet" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Andet" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Video" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Lyd" @@ -114,6 +110,11 @@ msgid "Remove %s" msgstr "Fjern %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder på %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -235,7 +236,7 @@ msgid "%s closed" msgstr "%s lukket" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Tilføjer %s..." @@ -274,7 +275,7 @@ msgid "Wrong username/password" msgstr "Forkert brugernavn/adgangskode" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Downloader" @@ -331,436 +332,553 @@ msgid "Command: %s" msgstr "Kommando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Standardprogram" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "fra %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Vælg episoder" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Heltal" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Kommatal" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Boolsk værdi" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Tekststreng" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "udgivet %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "afspillet" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "uafspillet" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "i dag" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/de.po -> 3.9.6.tar.gz/po/de.po
Changed
@@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2015-05-24 19:53+0100\n" "Last-Translator: Thomas Perl <m@thp.io>\n" "Language-Team: German (http://www.transifex.com/projects/p/gpodder/language/" @@ -20,86 +20,82 @@ "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 1.5.4\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder auf %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "vor %(count)d Tag" msgstr[1] "vor %(count)d Tagen" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Heute" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Gestern" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(unbekannt)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d Sekunde" msgstr[1] "%(count)d Sekunden" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d Stunde" msgstr[1] "%(count)d Stunden" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d Minute" msgstr[1] "%(count)d Minuten" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "und" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Keine Beschreibung verfügbar" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "unbekannt" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Fertig" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "Standard" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "Nur Neueste behalten" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Andere" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Video" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audio" @@ -113,6 +109,11 @@ msgid "Remove %s" msgstr "Entferne %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder auf %s" + #: src/gpodder/directory.py:95 msgid "gpodder.net search" msgstr "gpodder.net-Suche" @@ -228,7 +229,7 @@ msgid "%s closed" msgstr "%s geschlossen" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Füge %s hinzu..." @@ -266,7 +267,7 @@ msgid "Wrong username/password" msgstr "Falscher Benutzername/Passwort" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Herunterladen" @@ -320,429 +321,545 @@ msgid "Command: %s" msgstr "Kommando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Standard-Programm" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "von %s" + +#: src/gpodder/gtkui/shownotes.py:118 +msgid "Please select an episode" +msgstr "Bitte eine Episode auswählen" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Integer" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Float" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Boolesch" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "String" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "erschienen: %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "gespielt" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "nicht gespielt" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "heute" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s" +msgstr "heruntergeladen: %s"
View file
gpodder-3.9.3.tar.gz/po/el.po -> 3.9.6.tar.gz/po/el.po
Changed
@@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -21,86 +21,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "Το gPodder στο %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "Πριν από %(count)d ημέρα" msgstr[1] "Πριν από %(count)d ημέρες" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Σήμερα" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Χθες" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(άγνωστο)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d δευτερόλεπτο" msgstr[1] "%(count)d δευτερόλεπτα" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d ώρα" msgstr[1] "%(count)d ώρες" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d λεπτό" msgstr[1] "%(count)d λεπτά" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "και" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Δεν υπάρχει διαθέσιμη περιγραφή" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "άγνωστο" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Τελείωσε" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Άλλο" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Βίντεο" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Ήχος" @@ -114,6 +110,11 @@ msgid "Remove %s" msgstr "Αφαίρεση %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "Το gPodder στο %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -236,7 +237,7 @@ msgid "%s closed" msgstr "Το %s έκλεισε" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Προσθήκη του %s..." @@ -274,7 +275,7 @@ msgid "Wrong username/password" msgstr "Λάθος όνομα χρήστη/κωδικός πρόσβασης" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Λήψη" @@ -330,432 +331,549 @@ msgid "Command: %s" msgstr "Εντολή: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Προεπιλεγμένη εφαρμογή" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "από το %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Επιλογή επεισοδίων" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Ακέραιος αριθμός" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Float" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Boolean" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "String" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "κυκλοφόρησε %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "αναπαραγμένο" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "μη αναπαραγμένο" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "σήμερα" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/es.po -> 3.9.6.tar.gz/po/es.po
Changed
@@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -20,87 +20,83 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder en %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "Hace %(count)d día" msgstr[1] "Hace %(count)d días" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Hoy" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Ayer" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(desconocido)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d segundo" msgstr[1] "%(count)d segundos" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d hora" msgstr[1] "%(count)d horas" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minuto" msgstr[1] "%(count)d minutos" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "y" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "No hay una descripción disponible" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "desconocido" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Terminado" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 #, fuzzy msgid "Default" msgstr "Color predeterminado" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Otro" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Vídeo" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audio" @@ -114,6 +110,11 @@ msgid "Remove %s" msgstr "Eliminar %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder en %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -236,7 +237,7 @@ msgid "%s closed" msgstr "%s cerrado" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Añadiendo %s..." @@ -275,7 +276,7 @@ msgid "Wrong username/password" msgstr "Nombre de usuario/contraseña incorrectos" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Descargando" @@ -332,446 +333,563 @@ msgid "Command: %s" msgstr "Comando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Aplicación por defecto" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "de %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Selecciona capítulos" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Entero" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Flotante" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Booleano" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Cadena" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "publicado %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "escuchado" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "sin escuchar" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "hoy" + +#: src/gpodder/gtkui/model.py:86 +#, python-format
View file
gpodder-3.9.3.tar.gz/po/es_ES.po -> 3.9.6.tar.gz/po/es_ES.po
Changed
@@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -21,86 +21,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder en %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "Hace %(count)d día" msgstr[1] "Hace %(count)d días" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Hoy" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Ayer" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(desconocido)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d segundo" msgstr[1] "%(count)d segundos" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d hora" msgstr[1] "%(count)d horas" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minuto" msgstr[1] "%(count)d minutos" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "y" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Sin descripción disponible" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "desconocido" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Finalizado" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "Predeterminado" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "Solo mantener los últimos" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Otros" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Vídeo" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audio" @@ -114,6 +110,11 @@ msgid "Remove %s" msgstr "Quitar %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder en %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -234,7 +235,7 @@ msgid "%s closed" msgstr "%s cerrado" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Añadiendo %s..." @@ -272,7 +273,7 @@ msgid "Wrong username/password" msgstr "Nombre de usuario/contraseña incorrecto" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Descargando" @@ -326,431 +327,548 @@ msgid "Command: %s" msgstr "Orden: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Aplicación predeterminada" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "de %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Seleccionar episodios" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Entero" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Flotante" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Booleano" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Cadena" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "publicado el %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "reproducidos" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "sin reproducir" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "hoy" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/es_MX.po -> 3.9.6.tar.gz/po/es_MX.po
Changed
@@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -19,86 +19,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder en %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "Hace %(count)d día" msgstr[1] "Hace %(count)d días" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Hoy" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Ayer" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(desconocido)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d segundo" msgstr[1] "%(count)d segundos" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d hora" msgstr[1] "%(count)d horas" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minuto" msgstr[1] "%(count)d minutos" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "y" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "No hay descripción disponible" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "desconocido" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Terminado" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "Por defecto" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "Conservar únicamente el más reciente" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Otro" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Video" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audio" @@ -112,6 +108,11 @@ msgid "Remove %s" msgstr "Eliminar %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder en %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -233,7 +234,7 @@ msgid "%s closed" msgstr "%s cerrado" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Agregando %s..." @@ -271,7 +272,7 @@ msgid "Wrong username/password" msgstr "Usuario y/o contraseña incorrectos" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Descargando" @@ -326,412 +327,529 @@ msgid "Command: %s" msgstr "Comando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Aplicación por defecto" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "de %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Seleccionar episodios" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Entero" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Número de punto flotante" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Booleano" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Cadena" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "publicado el %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "reproducidos" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "sin reproducir" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "hoy" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/eu.po -> 3.9.6.tar.gz/po/eu.po
Changed
@@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -19,86 +19,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder %s-n" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "Duela egun %(count)d" msgstr[1] "Duela %(count)d egun" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Gaur" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Atzo" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(ezezaguna)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "Segundu %(count)d" msgstr[1] "%(count)d segundu" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "Ordu %(count)d" msgstr[1] "%(count)d ordu" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "Minutu %(count)d" msgstr[1] "%(count)d minutu" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "eta" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Ez dago deskribapenik eskuragarri" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "ezezaguna" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Amaituta" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "Lehenetsia" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "Mantendu azkena soilik" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Bestelakoak" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Bideoa" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audioa" @@ -112,6 +108,11 @@ msgid "Remove %s" msgstr "Ezabatu %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder %s-n" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -234,7 +235,7 @@ msgid "%s closed" msgstr "%s itxita" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "%s gehitzen..." @@ -272,7 +273,7 @@ msgid "Wrong username/password" msgstr "Erabiltzaile-izen/pasahitz okerra" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Deskargatzen" @@ -328,430 +329,547 @@ msgid "Command: %s" msgstr "Komandoa: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Aplikazio lehenetsia" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "%s-tik" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Hautatu atalak" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Zenbaki osoa" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Koma mugikorreko zenbakia" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Boolearra" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Katea" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "%s-n argitaratua" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "erreproduzitua" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "erreproduzitu gabea" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "gaur" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/fa_IR.po -> 3.9.6.tar.gz/po/fa_IR.po
Changed
@@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -20,82 +20,78 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "امروز" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "دیروز" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(نامعلوم)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "و" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "هیچ توضیحی مهیا نیست" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "ناشناخه" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "اتمام یافته" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "دیگر" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "ویدئو" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "صوت" @@ -109,6 +105,11 @@ msgid "Remove %s" msgstr "حذف %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "" + #: src/gpodder/directory.py:95 msgid "gpodder.net search" msgstr "" @@ -222,7 +223,7 @@ msgid "%s closed" msgstr "" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "" @@ -260,7 +261,7 @@ msgid "Wrong username/password" msgstr "نام کاربری/گذر واژه اشتباه" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "در حال دانلود" @@ -315,819 +316,815 @@ msgid "Command: %s" msgstr "" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "برنامه پیشفرض" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "" + +#: src/gpodder/gtkui/shownotes.py:118 +msgid "Please select an episode" +msgstr "" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "عدد صحیح" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "عدد اعشاری" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "بولی" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "رشته حروف" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "امروز" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s" +msgstr "" + +#: src/gpodder/gtkui/model.py:337 +msgid "Deleted" +msgstr ""
View file
gpodder-3.9.3.tar.gz/po/fi.po -> 3.9.6.tar.gz/po/fi.po
Changed
@@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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" @@ -18,86 +18,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder koneella %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "%(count)d päivä sitten" msgstr[1] "%(count)d päivää sitten" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Tänään" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Eilen" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(tuntematon)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d sekunti" msgstr[1] "%(count)d sekuntia" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d tunti" msgstr[1] "%(count)d tuntia" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minuutti" msgstr[1] "%(count)d minuuttia" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "ja" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Kuvausta ei ole saatavilla" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "tuntematon" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Valmis" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Muu" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "" @@ -111,6 +107,11 @@ msgid "Remove %s" msgstr "Poista %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder koneella %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -234,7 +235,7 @@ msgid "%s closed" msgstr "Laite %s on suljettu" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Lisätään jaksoa %s..." @@ -273,7 +274,7 @@ msgid "Wrong username/password" msgstr "Virheellinen käyttäjätunnus tai salasana" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Ladataan" @@ -330,436 +331,553 @@ msgid "Command: %s" msgstr "Komento: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Oletussovellus" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "kanavalta %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Valitse jaksot" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Kokonaisluku" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Liukuluku" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Totuusarvo" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Merkkijono" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "julkaistu %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "soitettu" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "soittamaton" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "tänään" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/fr.po -> 3.9.6.tar.gz/po/fr.po
Changed
@@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2013-01-19 12:30+0000\n" "Last-Translator: Thomas Perl <m@thp.io>\n" "Language-Team: French (http://www.transifex.com/projects/p/gpodder/language/" @@ -20,86 +20,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder sur %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "il y a %(count)d jour" msgstr[1] "il y a %(count)d jours" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Aujourd'hui" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Hier" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(inconnu)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d seconde" msgstr[1] "%(count)d secondes" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d heure" msgstr[1] "%(count)d heures" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minute" msgstr[1] "%(count)d minutes" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "et" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Aucune description disponible" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "inconnu" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Terminé" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Autre" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Vidéo" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audio" @@ -113,6 +109,11 @@ msgid "Remove %s" msgstr "Supprimer %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder sur %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -240,7 +241,7 @@ msgid "%s closed" msgstr "" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, fuzzy, python-format msgid "Adding %s..." msgstr "Podcast anonyme" @@ -279,7 +280,7 @@ msgid "Wrong username/password" msgstr "Mauvais nom d'utilisateur / mot de passe" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "En train de télécharger" @@ -335,441 +336,558 @@ msgid "Command: %s" msgstr "Commande: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Application par défaut" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "de %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Sélectionner des épisodes" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Entier" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Flottant" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Booléen" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Chaîne" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "publié le %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "lu" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "non lu" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "aujourd'hui" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/gl.po -> 3.9.6.tar.gz/po/gl.po
Changed
@@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -20,86 +20,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder en %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "vai %(count)d día" msgstr[1] "vai %(count)d días" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Hoxe" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Onte" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(descoñecido)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d segundo" msgstr[1] "%(count)d segundos" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d hora" msgstr[1] "%(count)d horas" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minuto" msgstr[1] "%(count)d minutos" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "e" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Sen descrición dispoñíbel" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "descoñecido" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Finalizada" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Outro" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Vídeo" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audio" @@ -113,6 +109,11 @@ msgid "Remove %s" msgstr "Eliminar %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder en %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -235,7 +236,7 @@ msgid "%s closed" msgstr "%s está pechado" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Engadindo %s..." @@ -273,7 +274,7 @@ msgid "Wrong username/password" msgstr "Nome de persoa usuaria ou contrasinal incorrecto" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Descargando" @@ -330,431 +331,548 @@ msgid "Command: %s" msgstr "Comando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Aplicación por defecto" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "de %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Seleccionar episodios" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Enteiro" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Flotante" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Booleano" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Cadea" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "data de lanzamento %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "reproducido" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "non reproducido" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "hoxe" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/he.po -> 3.9.6.tar.gz/po/he.po
Changed
@@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -21,86 +21,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder על %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "לפני יום" msgstr[1] "לפני %(count)d ימים" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "היום" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "אתמול" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(לא ידוע)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "שנייה אחת" msgstr[1] "%(count)d שניות" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "שעה אחת" msgstr[1] "%(count)d שעות" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "דקה אחת" msgstr[1] "%(count)d דקות" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "וגם" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "אין תיאור זמין" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "לא ידוע" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "הסתיים" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "אחר" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "וידאו" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "שמע" @@ -114,6 +110,11 @@ msgid "Remove %s" msgstr "הסר את %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder על %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -234,7 +235,7 @@ msgid "%s closed" msgstr "%s נסגר" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "מוסיף את %s..." @@ -272,7 +273,7 @@ msgid "Wrong username/password" msgstr "שם משתמש/ססמה שגויים" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "מוריד" @@ -329,429 +330,546 @@ msgid "Command: %s" msgstr "פקודה: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "יישום ברירת מחדל" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "מאת %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "בחר פרקים" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Integer" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Float" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Boolean" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "String" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "פורסם %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "הושמע" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "לא הושמע" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "היום" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/id_ID.po -> 3.9.6.tar.gz/po/id_ID.po
Changed
@@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -18,82 +18,78 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "" @@ -107,6 +103,11 @@ msgid "Remove %s" msgstr "" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "" + #: src/gpodder/directory.py:95 msgid "gpodder.net search" msgstr "" @@ -220,7 +221,7 @@ msgid "%s closed" msgstr "" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "" @@ -258,7 +259,7 @@ msgid "Wrong username/password" msgstr "" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "" @@ -312,819 +313,815 @@ msgid "Command: %s" msgstr "" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "" + +#: src/gpodder/gtkui/shownotes.py:118 +msgid "Please select an episode" +msgstr "" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s" +msgstr "" + +#: src/gpodder/gtkui/model.py:337 +msgid "Deleted" +msgstr ""
View file
gpodder-3.9.3.tar.gz/po/it.po -> 3.9.6.tar.gz/po/it.po
Changed
@@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2013-04-23 17:31+0100\n" "Last-Translator: Maurizio Ballo <xmaurizio.13@hotmail.com>\n" "Language-Team: Italian (http://www.transifex.com/projects/p/gpodder/language/" @@ -22,86 +22,82 @@ "Plural-Forms: nplurals=2; plural=(n != 1);\n" "X-Generator: Poedit 1.5.4\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder su %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "%(count)d giorno fa" msgstr[1] "%(count)d giorni fa" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Oggi" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Ieri" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(sconosciuto)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d secondo" msgstr[1] "%(count)d secondi" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d ora" msgstr[1] "%(count)d ore" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minuto" msgstr[1] "%(count)d minuti" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "e" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Nessuna descrizione disponibile" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "sconosciuto" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Completato" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "Predefinito" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "Tieni solo i più recenti" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Altro" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Video" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audio" @@ -115,6 +111,11 @@ msgid "Remove %s" msgstr "Elimina %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder su %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -237,7 +238,7 @@ msgid "%s closed" msgstr "%s chiuso" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Aggiunta di %s..." @@ -275,7 +276,7 @@ msgid "Wrong username/password" msgstr "Nome utente o password errati" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Download in corso" @@ -329,431 +330,548 @@ msgid "Command: %s" msgstr "Comando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Applicazione predefinita" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "da %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Seleziona episodi" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Intero" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "In virgola mobile" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Booleano" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Stringa" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "Data di rilascio %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "riprodotto" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "non riprodotto" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "oggi" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/kk.po -> 3.9.6.tar.gz/po/kk.po
Changed
@@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -19,82 +19,78 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder, %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "%(count)d күн бұрын" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Бүгін" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Кеше" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(белгісіз)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d секунд" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d сағат" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d минут" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "және" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Анықтамасы жоқ" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "белгісіз" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Аяқталған" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Басқа" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Видео" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Аудио" @@ -108,6 +104,11 @@ msgid "Remove %s" msgstr "Өшіру %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder, %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -228,7 +229,7 @@ msgid "%s closed" msgstr "%s жабылды" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Қосылуда %s..." @@ -266,7 +267,7 @@ msgid "Wrong username/password" msgstr "Қате тіркелгі/пароль" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Жүктелуде" @@ -323,417 +324,534 @@ msgid "Command: %s" msgstr "Команда: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Негізгі қолданба" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "қайдан: %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Эпизодтарды таңдау" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Бүтін сан" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Қалқымалы сан" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Boolean" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "String" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "%s шыққан" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "ойналған" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "ойналмаған" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "бүгін" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s" +msgstr "жүктелген %s" + +#: src/gpodder/gtkui/model.py:337 +msgid "Deleted"
View file
gpodder-3.9.3.tar.gz/po/ko_KR.po -> 3.9.6.tar.gz/po/ko_KR.po
Changed
@@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2016-01-01 21:09+0900\n" "Last-Translator: \n" "Language-Team: \n" @@ -18,82 +18,78 @@ "Plural-Forms: nplurals=1; plural=0;\n" "X-Generator: Poedit 1.8.6\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder on %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "%(count)d 일 전" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "오늘" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "어제" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "알수없는" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d 초" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d 시간" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d 분" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "그리고" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "사용가능한 설명이 없습니다" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "알수없는" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "완료" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "기본" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "최신으로 유지" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "다른" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "비디오" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "오디오" @@ -107,6 +103,11 @@ msgid "Remove %s" msgstr "%s 삭제" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder on %s" + #: src/gpodder/directory.py:95 msgid "gpodder.net search" msgstr "gpodder.net 에서 검색" @@ -220,7 +221,7 @@ msgid "%s closed" msgstr "%s 완료됨" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "%s 추가중..." @@ -258,7 +259,7 @@ msgid "Wrong username/password" msgstr "잘못된 사용자이름/암호" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "다운로드중" @@ -314,417 +315,533 @@ msgid "Command: %s" msgstr "명령어: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "기본 어플리케이션" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "%s 에서" + +#: src/gpodder/gtkui/shownotes.py:118 +msgid "Please select an episode" +msgstr "에피소드를 선택하세요" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "숫자" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "소수점 숫자" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "불(참/거짓)" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "문자열" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "배포 %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "재생됨" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "재생전" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "오늘" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s" +msgstr "다운로드됨 %s" + +#: src/gpodder/gtkui/model.py:337 +msgid "Deleted" +msgstr "삭제"
View file
gpodder-3.9.3.tar.gz/po/messages.pot -> 3.9.6.tar.gz/po/messages.pot
Changed
@@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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" @@ -18,86 +18,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "" @@ -111,6 +107,11 @@ msgid "Remove %s" msgstr "" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "" + #: src/gpodder/directory.py:95 msgid "gpodder.net search" msgstr "" @@ -224,7 +225,7 @@ msgid "%s closed" msgstr "" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "" @@ -262,7 +263,7 @@ msgid "Wrong username/password" msgstr "" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "" @@ -316,834 +317,830 @@ msgid "Command: %s" msgstr "" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "" + +#: src/gpodder/gtkui/shownotes.py:118 +msgid "Please select an episode" +msgstr "" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s" +msgstr ""
View file
gpodder-3.9.3.tar.gz/po/nb.po -> 3.9.6.tar.gz/po/nb.po
Changed
@@ -11,7 +11,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2013-01-19 12:30+0000\n" "Last-Translator: Thomas Perl <m@thp.io>\n" "Language-Team: Norwegian Bokmål (http://www.transifex.com/projects/p/gpodder/" @@ -22,86 +22,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder på %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "%(count)d dag siden" msgstr[1] "%(count)d dager siden" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Idag" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Igår" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(ukjent)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d sekund" msgstr[1] "%(count)d sekunder" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d time" msgstr[1] "%(count)d timer" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minutt" msgstr[1] "%(count)d minutter" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "og" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Ingen beskrivelse tilgjengelig" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "ukjent" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Ferdig" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Annet" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Video" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audio" @@ -115,6 +111,11 @@ msgid "Remove %s" msgstr "Fjern %s?" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder på %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -236,7 +237,7 @@ msgid "%s closed" msgstr "%s lukket" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Legger til %s …" @@ -275,7 +276,7 @@ msgid "Wrong username/password" msgstr "Feil brukernavn/passord" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Laster ned" @@ -332,434 +333,551 @@ msgid "Command: %s" msgstr "Kommando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Standardprogram" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "fra %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Velg episoder" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Heltall" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Flyttall" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Boolsk" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Streng" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "utgitt %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "avspilt" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "ikke avspilt" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "idag" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/nl.po -> 3.9.6.tar.gz/po/nl.po
Changed
@@ -11,7 +11,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2013-01-19 12:30+0000\n" "Last-Translator: Thomas Perl <m@thp.io>\n" "Language-Team: Dutch (http://www.transifex.com/projects/p/gpodder/language/" @@ -22,86 +22,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder heeft %s gevonden" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "%(count)d dag geleden" msgstr[1] "%(count)d dagen geleden" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Vandaag" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Gisteren" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(onbekend)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d seconde" msgstr[1] "%(count)d seconden" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d uur" msgstr[1] "%(count)d uren" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minuut" msgstr[1] "%(count)d minuten" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "en" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Geen beschrijving beschikbaar" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "onbekend" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Klaar" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Anders" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Video" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audio" @@ -115,6 +111,11 @@ msgid "Remove %s" msgstr "%s verwijderen?" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder heeft %s gevonden" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -235,7 +236,7 @@ msgid "%s closed" msgstr "" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Toevoegen van %s..." @@ -273,7 +274,7 @@ msgid "Wrong username/password" msgstr "Voer uw naam en wachtwoord in." -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Downloaden" @@ -330,428 +331,545 @@ msgid "Command: %s" msgstr "Commando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Standaard programma" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "<i>van %s</i>" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Afleveringen selecteren" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Integer" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Float" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Boolean" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "String" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "uitgegeven %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "afgespeeld" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "niet afgespeeld" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "vandaag" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/nn.po -> 3.9.6.tar.gz/po/nn.po
Changed
@@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2013-01-19 12:30+0000\n" "Last-Translator: Thomas Perl <m@thp.io>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -20,86 +20,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder på %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Idag" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "I går" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(ukjend)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "" msgstr[1] "" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "og" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Ingen detaljar tilgjengeleg" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "ukjend" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Ferdig" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Andre" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "" @@ -113,6 +109,11 @@ msgid "Remove %s" msgstr "Fjern %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder på %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -235,7 +236,7 @@ msgid "%s closed" msgstr "%s lukka" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Legg til %s ..." @@ -274,7 +275,7 @@ msgid "Wrong username/password" msgstr "Feil brukarnamn/passord" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Lastar ned" @@ -331,435 +332,553 @@ msgid "Command: %s" msgstr "Kommando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Standardprogram" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "Frå %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Vel episodar" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Heiltal" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Flyttal" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Boolsk" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Streng" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "Utgjeven %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "avspela" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "ikkje spela" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "idag" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/pl.po -> 3.9.6.tar.gz/po/pl.po
Changed
@@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2013-03-05 15:01+0000\n" "Last-Translator: Thomas Perl <m@thp.io>\n" "Language-Team: Polish (http://www.transifex.com/projects/p/gpodder/language/" @@ -21,12 +21,7 @@ "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder na %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" @@ -34,19 +29,19 @@ msgstr[1] "%(count)d dni temu" msgstr[2] "%(count)d dni temu" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Dzisiaj" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Wczoraj" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(nieznane)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" @@ -54,7 +49,7 @@ msgstr[1] "%(count)d sekundy" msgstr[2] "%(count)d sekund" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" @@ -62,7 +57,7 @@ msgstr[1] "%(count)d godziny" msgstr[2] "%(count)d godzin" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" @@ -70,41 +65,42 @@ msgstr[1] "%(count)d minuty" msgstr[2] "%(count)d minut" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "i" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Brak opisu" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "nieznany" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Ukończone" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "Domyślnie" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "Zachowaj tylko najnowsze" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Inne" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Wideo" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Audio" @@ -118,6 +114,11 @@ msgid "Remove %s" msgstr "Usuń %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder na %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -240,7 +241,7 @@ msgid "%s closed" msgstr "%s zamknięty" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Dodawanie %s..." @@ -278,7 +279,7 @@ msgid "Wrong username/password" msgstr "Nieprawidłowa nazwa użytkownika lub hasło" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Pobieranie" @@ -332,23 +333,136 @@ msgid "Command: %s" msgstr "Polecenie: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Domyślny program" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "od %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Wybierz odcinki" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Liczba całkowita" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Liczba zmiennoprzecinkowa" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Typ logiczny" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Ciąg" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "wydano %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "odtworzony" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "nieodtworzony" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "dzisiaj"
View file
gpodder-3.9.3.tar.gz/po/pt.po -> 3.9.6.tar.gz/po/pt.po
Changed
@@ -10,7 +10,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -21,86 +21,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder em %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "%(count)d dia atrás" msgstr[1] "%(count)d dias atrás" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Hoje" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Ontem" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(desconhecido)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d segundo" msgstr[1] "%(count)d segundos" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d hora" msgstr[1] "%(count)d horas" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minuto" msgstr[1] "%(count)d minutos" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "e" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Sem descrição" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "desconhecido" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Concluído" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "Padrão" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "Manter última" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Outros" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Vídeo" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Áudio" @@ -114,6 +110,11 @@ msgid "Remove %s" msgstr "Remover %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder em %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -235,7 +236,7 @@ msgid "%s closed" msgstr "%s fechado" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "A adicionar %s." @@ -273,7 +274,7 @@ msgid "Wrong username/password" msgstr "Utilizador/senha inválida" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "A transferir" @@ -327,428 +328,545 @@ msgid "Command: %s" msgstr "Comando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Aplicação padrão" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "por %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Selecione os episódios" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Inteiro" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Flutuante" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Booleano" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Texto" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "publicado %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "reproduzido" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "não reproduzido" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "hoje" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/pt_BR.po -> 3.9.6.tar.gz/po/pt_BR.po
Changed
@@ -13,7 +13,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -24,86 +24,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder em %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "%(count)d dia atrás" msgstr[1] "%(count)d dias atrás" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Hoje" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Ontem" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(desconhecido)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d segundo" msgstr[1] "%(count)d segundos" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d hora" msgstr[1] "%(count)d horas" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minuto" msgstr[1] "%(count)d minutos" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "e" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Descrição não disponível" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "desconhecido" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Terminados" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "Padrão" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "Apenas manter as últimas" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Outro" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Vídeo" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Áudio" @@ -117,6 +113,11 @@ msgid "Remove %s" msgstr "Remove %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder em %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -237,7 +238,7 @@ msgid "%s closed" msgstr "%s fechado" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Adicionando %s..." @@ -275,7 +276,7 @@ msgid "Wrong username/password" msgstr "Login/Password inválidos" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Downloading" @@ -329,853 +330,848 @@ msgid "Command: %s" msgstr "Comando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Aplicativo Padrão" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "De %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Selecione os episódios" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Inteiro" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Flutuante" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Boleano" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Texto" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "publicado em %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "reproduzido" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "não reproduzido" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "hoje" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/ro.po -> 3.9.6.tar.gz/po/ro.po
Changed
@@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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" @@ -18,12 +18,7 @@ "Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?" "2:1));\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder pe %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" @@ -31,19 +26,19 @@ msgstr[1] "" msgstr[2] "" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Astăzi" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Ieri" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(necunoscut)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" @@ -51,7 +46,7 @@ msgstr[1] "" msgstr[2] "" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" @@ -59,7 +54,7 @@ msgstr[1] "" msgstr[2] "" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" @@ -67,41 +62,42 @@ msgstr[1] "" msgstr[2] "" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "și" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Nu există descriere" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "necunoscut" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Gata" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Altele" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "" @@ -115,6 +111,11 @@ msgid "Remove %s" msgstr "Îndepărtează %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder pe %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -238,7 +239,7 @@ msgid "%s closed" msgstr "%s închis" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Adaugă %s..." @@ -277,7 +278,7 @@ msgid "Wrong username/password" msgstr "Numele sau parola este greșită" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Se descarcă" @@ -334,24 +335,138 @@ msgid "Command: %s" msgstr "Linie de comandă: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Aplicația implicită" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "de către %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Selectați episoadele" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Întreg" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Virgulă mobilă" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Binar" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Șir de caractere" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "publicat %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "derulat" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "nederulat" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "Astăzi"
View file
gpodder-3.9.3.tar.gz/po/ru.po -> 3.9.6.tar.gz/po/ru.po
Changed
@@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: gPodder 2.10+git\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2010-11-24 21:55+0300\n" "Last-Translator: Maxim Prohorov <prohorov.max@gmail.com>\n" "Language-Team: \n" @@ -18,12 +18,7 @@ "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " "|| n%100>=20) ? 1 : 2);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder на %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" @@ -31,19 +26,19 @@ msgstr[1] "%(count)d дня назад" msgstr[2] "%(count)d дней назад" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Сегодня" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Вчера" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(неизвестно)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" @@ -51,7 +46,7 @@ msgstr[1] "%(count)d секунды" msgstr[2] "%(count)d секунд" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" @@ -59,7 +54,7 @@ msgstr[1] "%(count)d часа" msgstr[2] "%(count)d часов" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" @@ -67,41 +62,42 @@ msgstr[1] "%(count)d минуты" msgstr[2] "%(count)d минут" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "и" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Нет описания" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "неизвестно" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Завершено" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Другое" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Видео" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Аудио" @@ -115,6 +111,11 @@ msgid "Remove %s" msgstr "Удалить %s?" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder на %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -238,7 +239,7 @@ msgid "%s closed" msgstr "%s закрыто" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Добавление %s..." @@ -277,7 +278,7 @@ msgid "Wrong username/password" msgstr "Неверное имя пользователя/пароль" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Загрузка" @@ -334,24 +335,137 @@ msgid "Command: %s" msgstr "Команда: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Приложение по-умолчанию" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "от %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Пауза" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Целое" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "С плавающей запятой" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Булево" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Строка" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "выпущен %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "прослушан" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "не прослушан" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "сегодня"
View file
gpodder-3.9.3.tar.gz/po/sv.po -> 3.9.6.tar.gz/po/sv.po
Changed
@@ -11,7 +11,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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/" @@ -22,86 +22,82 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder på %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "%(count)d dag sedan" msgstr[1] "%(count)d dagar sedan" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Idag" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Igår" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(okänt)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d sekund" msgstr[1] "%(count)d sekunder" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d timme" msgstr[1] "%(count)d timmar" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d minut" msgstr[1] "%(count)d minuter" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "och" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Ingen beskrivning tillgänglig" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "okänt" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Klar" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Annan" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Video" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Ljud" @@ -115,6 +111,11 @@ msgid "Remove %s" msgstr "Radera %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder på %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -238,7 +239,7 @@ msgid "%s closed" msgstr "%s stängd" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Lägger till %s..." @@ -277,7 +278,7 @@ msgid "Wrong username/password" msgstr "Fel användarnamn/lösenord." -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Laddar ner" @@ -334,434 +335,551 @@ msgid "Command: %s" msgstr "Kommando: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Förvald applikation" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "från %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Välj avsnitt" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Heltal" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "Flyttal" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Boolean" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Sträng" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "utgiven %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "spelad" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "ej spelad" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "idag" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s"
View file
gpodder-3.9.3.tar.gz/po/tr.po -> 3.9.6.tar.gz/po/tr.po
Changed
@@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2013-01-19 12:31+0000\n" "Last-Translator: Thomas Perl <m@thp.io>\n" "Language-Team: Turkish (http://www.transifex.com/projects/p/gpodder/language/" @@ -19,82 +19,78 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Bugün" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Dün" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(Bilinmiyor)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d saniye" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d saat" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d dakika" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "ve" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "bilinmiyor" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Diğer" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "Video" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "Ses" @@ -108,6 +104,11 @@ msgid "Remove %s" msgstr "%s kaldır" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -229,7 +230,7 @@ msgid "%s closed" msgstr "" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "" @@ -267,7 +268,7 @@ msgid "Wrong username/password" msgstr "" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "" @@ -322,830 +323,825 @@ msgid "Command: %s" msgstr "Komut: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Varsayılan uygulama" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Bölüm seçin" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "bugün" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s" +msgstr "" + +#: src/gpodder/gtkui/model.py:337 +msgid "Deleted"
View file
gpodder-3.9.3.tar.gz/po/tr_TR.po -> 3.9.6.tar.gz/po/tr_TR.po
Changed
@@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2013-01-19 12:30+0000\n" "Last-Translator: Thomas Perl <m@thp.io>\n" "Language-Team: Turkish (Turkey) (http://www.transifex.com/projects/p/gpodder/" @@ -18,82 +18,78 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "" @@ -107,6 +103,11 @@ msgid "Remove %s" msgstr "" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "" + #: src/gpodder/directory.py:95 msgid "gpodder.net search" msgstr "" @@ -220,7 +221,7 @@ msgid "%s closed" msgstr "" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "" @@ -258,7 +259,7 @@ msgid "Wrong username/password" msgstr "" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "" @@ -312,819 +313,815 @@ msgid "Command: %s" msgstr "" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "" + +#: src/gpodder/gtkui/shownotes.py:118 +msgid "Please select an episode" +msgstr "" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s" +msgstr "" + +#: src/gpodder/gtkui/model.py:337 +msgid "Deleted" +msgstr ""
View file
gpodder-3.9.3.tar.gz/po/uk.po -> 3.9.6.tar.gz/po/uk.po
Changed
@@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\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" @@ -19,12 +19,7 @@ "Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" "%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder на %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" @@ -32,19 +27,19 @@ msgstr[1] "%(count)d дні тому" msgstr[2] "%(count)d днів тому" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "Сьогодні" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "Вчора" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(невідомо)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" @@ -52,7 +47,7 @@ msgstr[1] "%(count)d секунди" msgstr[2] "%(count)d секунд" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" @@ -60,7 +55,7 @@ msgstr[1] "%(count)d години" msgstr[2] "%(count)d годин" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" @@ -68,41 +63,42 @@ msgstr[1] "%(count)d хвилини" msgstr[2] "%(count)d хвилин\t" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr "та" -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "Опис відсутній" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "невідомий" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "Завершено" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "Інше" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "" @@ -116,6 +112,11 @@ msgid "Remove %s" msgstr "Видалити %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder на %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -238,7 +239,7 @@ msgid "%s closed" msgstr "%s закрито" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, python-format msgid "Adding %s..." msgstr "Додаю %s..." @@ -277,7 +278,7 @@ msgid "Wrong username/password" msgstr "Неправильне ім'я користувача/пароль" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "Завантажую" @@ -334,23 +335,136 @@ msgid "Command: %s" msgstr "Команда: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "Програма за замовчуванням" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "від %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "Обрати епізоди" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "Ціле" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "З плаваючою комою" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "Логічне" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "Рядок" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "опубліковано %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "прослухано" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "непрослухано" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "сьогодні"
View file
gpodder-3.9.3.tar.gz/po/zh_CN.po -> 3.9.6.tar.gz/po/zh_CN.po
Changed
@@ -9,7 +9,7 @@ msgstr "" "Project-Id-Version: gPodder\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2016-12-22 14:48+0100\n" +"POT-Creation-Date: 2016-02-03 21:09+0100\n" "PO-Revision-Date: 2013-01-19 12:31+0000\n" "Last-Translator: Thomas Perl <m@thp.io>\n" "Language-Team: Chinese (China) (http://www.transifex.com/projects/p/gpodder/" @@ -20,82 +20,78 @@ "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -#: src/gpodder/config.py:55 -#, python-format -msgid "gPodder on %s" -msgstr "gPodder 在 %s" - -#: src/gpodder/util.py:442 +#: src/gpodder/util.py:429 #, python-format msgid "%(count)d day ago" msgid_plural "%(count)d days ago" msgstr[0] "%(count)d 日之前" -#: src/gpodder/util.py:521 +#: src/gpodder/util.py:508 msgid "Today" msgstr "今日" -#: src/gpodder/util.py:523 +#: src/gpodder/util.py:510 msgid "Yesterday" msgstr "昨日" -#: src/gpodder/util.py:566 src/gpodder/util.py:569 +#: src/gpodder/util.py:553 src/gpodder/util.py:556 msgid "(unknown)" msgstr "(不明)" -#: src/gpodder/util.py:1355 src/gpodder/util.py:1374 +#: src/gpodder/util.py:1193 src/gpodder/util.py:1212 #, python-format msgid "%(count)d second" msgid_plural "%(count)d seconds" msgstr[0] "%(count)d 秒" -#: src/gpodder/util.py:1368 +#: src/gpodder/util.py:1206 #, python-format msgid "%(count)d hour" msgid_plural "%(count)d hours" msgstr[0] "%(count)d 小时" -#: src/gpodder/util.py:1371 +#: src/gpodder/util.py:1209 #, python-format msgid "%(count)d minute" msgid_plural "%(count)d minutes" msgstr[0] "%(count)d 分" -#: src/gpodder/util.py:1377 +#: src/gpodder/util.py:1215 msgid "and" msgstr " " -#: src/gpodder/model.py:350 src/gpodder/plugins/soundcloud.py:156 +#: src/gpodder/model.py:446 src/gpodder/plugins/soundcloud.py:156 msgid "No description available" msgstr "无介绍" -#: src/gpodder/model.py:583 +#: src/gpodder/model.py:679 msgid "unknown" msgstr "未知" -#: src/gpodder/model.py:625 src/gpodder/sync.py:925 src/gpodder/download.py:528 +#: src/gpodder/model.py:721 src/gpodder/sync.py:925 +#: src/gpodder/download.py:528 msgid "Finished" msgstr "已完成" -#: src/gpodder/model.py:650 +#: src/gpodder/model.py:746 msgid "Default" msgstr "" -#: src/gpodder/model.py:651 +#: src/gpodder/model.py:747 msgid "Only keep latest" msgstr "" -#: src/gpodder/model.py:684 src/gpodder/model.py:1106 +#: src/gpodder/model.py:779 src/gpodder/model.py:1225 #: src/gpodder/extensions.py:59 msgid "Other" msgstr "其他" -#: src/gpodder/model.py:1089 src/gpodder/model.py:1104 +#: src/gpodder/model.py:1208 src/gpodder/model.py:1223 #: share/gpodder/ui/gtk/gpodderpreferences.ui.h:10 msgid "Video" msgstr "视频" -#: src/gpodder/model.py:1102 +#: src/gpodder/model.py:1221 msgid "Audio" msgstr "音频" @@ -109,6 +105,11 @@ msgid "Remove %s" msgstr "移除 %s" +#: src/gpodder/config.py:55 +#, python-format +msgid "gPodder on %s" +msgstr "gPodder 在 %s" + #: src/gpodder/directory.py:95 #, fuzzy msgid "gpodder.net search" @@ -230,7 +231,7 @@ msgid "%s closed" msgstr "" -#: src/gpodder/sync.py:821 bin/gpo:707 +#: src/gpodder/sync.py:821 bin/gpo:708 #, fuzzy, python-format msgid "Adding %s..." msgstr "添加播客..." @@ -268,7 +269,7 @@ msgid "Wrong username/password" msgstr "错误的 用户名/密码" -#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:368 +#: src/gpodder/download.py:527 src/gpodder/gtkui/model.py:327 msgid "Downloading" msgstr "下载中" @@ -324,834 +325,829 @@ msgid "Command: %s" msgstr "命令: %s" -#: src/gpodder/gtkui/desktopfile.py:154 +#: src/gpodder/gtkui/desktopfile.py:150 msgid "Default application" msgstr "默认应用程序" -#: src/gpodder/gtkui/main.py:202 share/applications/gpodder.desktop.in.h:1 +#: src/gpodder/gtkui/shownotes.py:84 src/gpodder/gtkui/model.py:69 +#: src/gpodder/gtkui/model.py:87 src/gpodder/gtkui/model.py:237 +#, python-format +msgid "from %s" +msgstr "从 %s" + +#: src/gpodder/gtkui/shownotes.py:118 +#, fuzzy +msgid "Please select an episode" +msgstr "删除片段" + +#: src/gpodder/gtkui/config.py:50 +msgid "Integer" +msgstr "整型" + +#: src/gpodder/gtkui/config.py:52 +msgid "Float" +msgstr "浮点" + +#: src/gpodder/gtkui/config.py:54 +msgid "Boolean" +msgstr "布伦" + +#: src/gpodder/gtkui/config.py:56 +msgid "String" +msgstr "字符串" + +#: src/gpodder/gtkui/model.py:68 +#, python-format +msgid "released %s" +msgstr "发布 %s" + +#: src/gpodder/gtkui/model.py:80 src/gpodder/gtkui/model.py:393 +msgid "played" +msgstr "播放过的" + +#: src/gpodder/gtkui/model.py:82 +msgid "unplayed" +msgstr "未播放的" + +#: src/gpodder/gtkui/model.py:85 +msgid "today" +msgstr "今日" + +#: src/gpodder/gtkui/model.py:86 +#, python-format +msgid "downloaded %s" +msgstr "下载的 %s" + +#: src/gpodder/gtkui/model.py:337 +msgid "Deleted"
View file
gpodder-3.9.3.tar.gz/setup.py -> 3.9.6.tar.gz/setup.py
Changed
@@ -2,7 +2,7 @@ # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/share/gpodder/examples/hello_world.py -> 3.9.6.tar.gz/share/gpodder/examples/hello_world.py
Changed
@@ -37,3 +37,17 @@ def on_unload(self): logger.info('Extension is being unloaded.') + + def on_ui_object_available(self, name, ui_object): + """ + Called by gPodder when ui is ready + """ + if name == 'gpodder-gtk': + self.gpodder = ui_object + + def on_create_menu(self): + return [("Say Hello", self.say_hello_cb)] + + def say_hello_cb(self): + print("HELLO") + self.gpodder.notification("Hello Extension", "Message", widget=self.gpodder.main_window)
View file
gpodder-3.9.3.tar.gz/share/gpodder/extensions/enqueue_in_mediaplayer.py -> 3.9.6.tar.gz/share/gpodder/extensions/enqueue_in_mediaplayer.py
Changed
@@ -13,8 +13,8 @@ _ = gpodder.gettext -__title__ = _('Enqueue in media players') -__description__ = _('Add a context menu item for enqueueing episodes in installed media players') +__title__ = _('Enqueue/Resume in media players') +__description__ = _('Add a context menu item for enqueueing/resuming playback of episodes in installed media players') __authors__ = 'Thomas Perl <thp@gpodder.org>, Bernd Schlapsi <brot@gmx.info>' __doc__ = 'http://wiki.gpodder.org/wiki/Extensions/EnqueueInMediaplayer' __payment__ = 'https://flattr.com/submit/auto?user_id=BerndSch&url=http://wiki.gpodder.org/wiki/Extensions/EnqueueInMediaplayer' @@ -23,8 +23,8 @@ DefaultConfig = { - 'enqueue_after_download': False, # Set to True to enqueue an episode right after downloading - 'default_player': '', # Set to the player to be used for auto-enqueueing (otherwise pick first installed) + 'enqueue_after_download': False, # Set to True to enqueue an episode right after downloading + 'default_player': '', # Set to the player to be used for auto-enqueueing (otherwise pick first installed) } @@ -59,7 +59,7 @@ def open_files(self, filenames): subprocess.Popen(self.command + filenames, - stdout=subprocess.PIPE, stderr=subprocess.PIPE) + stdout=subprocess.PIPE, stderr=subprocess.PIPE) class Win32Player(Player): @@ -81,6 +81,115 @@ subprocess.Popen(cmd) +class MPRISResumer(FreeDesktopPlayer): + """ + resume episod playback at saved time + """ + OBJECT_PLAYER = '/org/mpris/MediaPlayer2' + OBJECT_DBUS = '/org/freedesktop/DBus' + INTERFACE_PLAYER = 'org.mpris.MediaPlayer2.Player' + INTERFACE_PROPS = 'org.freedesktop.DBus.Properties' + SIGNAL_PROP_CHANGE = 'PropertiesChanged' + NAME_DBUS = 'org.freedesktop.DBus' + + def __init__(self, slug, application, command, bus_name): + super(MPRISResumer, self).__init__(slug, application, command) + self.title = '/'.join((_('Resume in'), application)) + self.bus_name = bus_name + self.player = None + self.position_us = None + self.url = None + + def is_installed(self): + if gpodder.ui.win32: + return False + return util.find_command(self.command[0]) is not None + + def enqueue_episodes(self, episodes): + self.do_enqueue(episodes[0].get_playback_url(), + episodes[0].current_position) + + for episode in episodes: + episode.playback_mark() + if self.gpodder is not None: + self.gpodder.update_episode_list_icons(selected=True) + + def init_dbus(self): + bus = gpodder.dbus_session_bus + + if not bus.name_has_owner(self.bus_name): + logger.debug('MPRISResumer %s is not there...', self.bus_name) + return False + + self.player = bus.get_object(self.bus_name, self.OBJECT_PLAYER) + self.signal_match = self.player.connect_to_signal(self.SIGNAL_PROP_CHANGE, + self.on_prop_change, + dbus_interface=self.INTERFACE_PROPS) + return True + + def enqueue_when_ready(self, filename, pos): + def name_owner_changed(name, old_owner, new_owner): + logger.debug('name_owner_changed "%s" "%s" "%s"', + name, old_owner, new_owner) + if name == self.bus_name: + logger.debug('MPRISResumer player %s is there', name) + cancel.remove() + util.idle_add(lambda: self.do_enqueue(filename, pos)) + + bus = gpodder.dbus_session_bus + obj = bus.get_object(self.NAME_DBUS, self.OBJECT_DBUS) + cancel = obj.connect_to_signal('NameOwnerChanged', name_owner_changed, dbus_interface=self.NAME_DBUS) + + def do_enqueue(self, filename, pos): + def on_reply(): + logger.debug('MPRISResumer opened %s', self.url) + + def on_error(exception): + logger.error('MPRISResumer error %s', repr(exception)) + self.signal_match.remove() + + if filename.startswith('/'): + try: + import pathlib + self.url = pathlib.Path(filename).as_uri() + except ImportError: + self.url = 'file://' + filename + self.position_us = pos * 1000 * 1000 # pos in microseconds + if self.init_dbus(): + # async to not freeze the ui waiting for the application to answer + self.player.OpenUri(self.url, + dbus_interface=self.INTERFACE_PLAYER, + reply_handler=on_reply, + error_handler=on_error) + else: + self.enqueue_when_ready(filename, pos) + logger.debug('MPRISResumer launching player %s', self.application) + super(MPRISResumer, self).open_files([]) + + def on_prop_change(self, interface, props, invalidated_props): + def on_reply(): + pass + + def on_error(exception): + logger.error('MPRISResumer SetPosition error %s', repr(exception)) + self.signal_match.remove() + + metadata = props.get('Metadata', {}) + url = metadata.get('xesam:url') + track_id = metadata.get('mpris:trackid') + if url is not None and track_id is not None: + if url == self.url: + logger.info('Enqueue %s setting track %s position=%d', + url, track_id, self.position_us) + self.player.SetPosition(str(track_id), self.position_us, + dbus_interface=self.INTERFACE_PLAYER, + reply_handler=on_reply, + error_handler=on_error) + else: + logger.debug('Changed but wrong url: %s, giving up', url) + self.signal_match.remove() + + PLAYERS = [ # Amarok, http://amarok.kde.org/ FreeDesktopPlayer('amarok', 'Amarok', ['amarok', '--play', '--append']), @@ -116,24 +225,64 @@ Win32Player('foobar2000', 'foobar2000', r'HKEY_CLASSES_ROOT\foobar2000.MP3\shell\enqueue\command'), ] + +RESUMERS = [ + # doesn't play on my system, but the track is appended. + MPRISResumer('amarok', 'Amarok', ['amarok', '--play'], 'org.mpris.MediaPlayer2.amarok'), + + MPRISResumer('vlc', 'VLC', ['vlc', '--started-from-file'], 'org.mpris.MediaPlayer2.vlc'), + + # totem mpris2 plugin is broken for me: it raises AttributeError: + # File "/usr/lib/totem/plugins/dbus/dbusservice.py", line 329, in OpenUri + # self.totem.add_to_playlist_and_play (uri) + # MPRISResumer('totem', 'Totem', ['totem'], 'org.mpris.MediaPlayer2.totem'), + + # with https://github.com/Serranya/deadbeef-mpris2-plugin + MPRISResumer('resume in deadbeef', 'DeaDBeeF', ['deadbeef'], 'org.mpris.MediaPlayer2.DeaDBeeF'), + + # the gPodder Dowloads directory must be in gmusicbrowser's library + MPRISResumer('resume in gmusicbrowser', 'gmusicbrowser', ['gmusicbrowser'], 'org.mpris.MediaPlayer2.gmusicbrowser'), + + # Audacious doesn't implement MPRIS2.OpenUri + # MPRISResumer('audacious', 'resume in Audacious', ['audacious', '--enqueue'], 'org.mpris.MediaPlayer2.audacious'), + + # beware: clementine never exits on my system (even when launched from cmdline) + # so the zombie clementine process will get all the bus messages and never answer + # resulting in freezes and timeouts! + MPRISResumer('clementine', 'Clementine', ['clementine'], 'org.mpris.MediaPlayer2.clementine'), + + # just enable the plugin + MPRISResumer('parole', 'Parole', ['parole'], 'org.mpris.MediaPlayer2.parole'), +] + + class gPodderExtension: def __init__(self, container): self.container = container self.config = container.config # Only display media players that can be found at extension load time - self.players = filter(lambda player: player.is_installed(), PLAYERS) + self.players = [p for p in PLAYERS if p.is_installed()] + self.resumers = [r for r in RESUMERS if r.is_installed()] def on_ui_object_available(self, name, ui_object): if name == 'gpodder-gtk': - for p in self.players: + for p in self.players + self.resumers: p.gpodder = ui_object def on_episodes_context_menu(self, episodes): if not any(e.file_exists() for e in episodes):
View file
gpodder-3.9.3.tar.gz/share/gpodder/extensions/gtk_statusicon.py -> 3.9.6.tar.gz/share/gpodder/extensions/gtk_statusicon.py
Changed
@@ -14,7 +14,7 @@ __title__ = _('Gtk Status Icon') __description__ = _('Show a status icon for Gtk-based Desktops.') __category__ = 'desktop-integration' -__only_for__ = 'gtk' +__only_for__ = 'gtk,python2' __disable_in__ = 'unity,win32' import gtk
View file
gpodder-3.9.3.tar.gz/share/gpodder/extensions/minimize_on_start.py -> 3.9.6.tar.gz/share/gpodder/extensions/minimize_on_start.py
Changed
@@ -18,5 +18,8 @@ def on_ui_object_available(self, name, ui_object): if name == 'gpodder-gtk': - ui_object.main_window.iconify() + self.ui_object = ui_object + def on_application_started(self): + if self.ui_object: + self.ui_object.main_window.iconify()
View file
gpodder-3.9.3.tar.gz/share/gpodder/extensions/mpris-listener.py -> 3.9.6.tar.gz/share/gpodder/extensions/mpris-listener.py
Changed
@@ -35,6 +35,7 @@ __authors__ = 'Dov Feldstern <dovdevel@gmail.com>' __doc__ = 'http://wiki.gpodder.org/wiki/Extensions/MprisListener' __category__ = 'desktop-integration' +__only_for__ = 'freedesktop' USECS_IN_SEC = 1000000 @@ -210,6 +211,10 @@ INTERFACE_MPRIS = 'org.mpris.MediaPlayer2.Player' SIGNAL_SEEKED = 'Seeked' OBJECT_VLC = 'org.mpris.MediaPlayer2.vlc' + OTHER_MPRIS_INTERFACES = [ 'org.mpris.MediaPlayer2', + 'org.mpris.MediaPlayer2.TrackList', + 'org.mpris.MediaPlayer2.Playlists' + ] def __init__(self, bus, notifier): self.bus = bus @@ -240,7 +245,8 @@ def on_prop_change(self, interface_name, changed_properties, invalidated_properties, path=None): if interface_name != self.INTERFACE_MPRIS: - logger.warn('unexpected interface: %s', interface_name) + if interface_name not in self.OTHER_MPRIS_INTERFACES: + logger.warn('unexpected interface: %s, props=%r', interface_name, changed_properties.keys()) return collected_info = {} @@ -248,8 +254,10 @@ if changed_properties.has_key('PlaybackStatus'): collected_info['status'] = str(changed_properties['PlaybackStatus']) if changed_properties.has_key('Metadata'): - collected_info['uri'] = changed_properties['Metadata']['xesam:url'] - collected_info['length'] = changed_properties['Metadata']['mpris:length'] + # on stop there is no xesam:url + if changed_properties['Metadata'].has_key('xesam:url'): + collected_info['uri'] = changed_properties['Metadata']['xesam:url'] + collected_info['length'] = changed_properties['Metadata']['mpris:length'] if changed_properties.has_key('Rate'): collected_info['rate'] = changed_properties['Rate'] collected_info['pos'] = self.query_position() @@ -277,6 +285,7 @@ class gPodderNotifier(dbus.service.Object): def __init__(self, bus, path): dbus.service.Object.__init__(self, bus, path) + self.start_position = 0 @dbus.service.signal(dbus_interface='org.gpodder.player', signature='us') def PlaybackStarted(self, start_position, file_uri):
View file
gpodder-3.9.3.tar.gz/share/gpodder/extensions/notification-win32.py -> 3.9.6.tar.gz/share/gpodder/extensions/notification-win32.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/share/gpodder/extensions/tagging.py -> 3.9.6.tar.gz/share/gpodder/extensions/tagging.py
Changed
@@ -103,7 +103,7 @@ None def get_cover_picture(self, cover): - """ Returns mutage Picture class for the cover image + """ Returns mutagen Picture class for the cover image Usefull for OGG and FLAC format Picture type = cover image @@ -183,32 +183,28 @@ def get_audio(self, info, episode): audio = None cover = None + audioClass = None if self.container.config.auto_embed_coverart: cover = self.get_cover(episode.channel) if info['filename'].endswith('.mp3'): - audio = Mp3File(info['filename'], - info['album'], - info['title'], - info['genre'], - info['pubDate'], - cover) + audioClass = Mp3File elif info['filename'].endswith('.ogg'): - audio = OggFile(info['filename'], - info['album'], - info['title'], - info['genre'], - info['pubDate'], - cover) + audioClass = OggFile elif info['filename'].endswith('.m4a') or info['filename'].endswith('.mp4'): - audio = Mp4File(info['filename'], + audioClass = Mp4File + elif File(info['filename'], easy=True): + # mutagen can work with it: at least add basic tags + audioClass = AudioFile + + if audioClass: + audio = audioClass(info['filename'], info['album'], info['title'], info['genre'], info['pubDate'], cover) - return audio def read_episode_info(self, episode):
View file
gpodder-3.9.3.tar.gz/share/gpodder/extensions/taskbar_progress.py -> 3.9.6.tar.gz/share/gpodder/extensions/taskbar_progress.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/share/gpodder/extensions/update_feeds_on_startup.py -> 3.9.6.tar.gz/share/gpodder/extensions/update_feeds_on_startup.py
Changed
@@ -30,6 +30,6 @@ if name == 'gpodder-gtk': self.gpodder = ui_object - def on_ui_initialized(self, model, update_podcast_callback, - download_episode_callback): - self.gpodder.update_feed_cache() + def on_application_started(self): + if self.gpodder: + self.gpodder.update_feed_cache()
View file
gpodder-3.9.3.tar.gz/share/gpodder/ui/gtk/gpodder.ui -> 3.9.6.tar.gz/share/gpodder/ui/gtk/gpodder.ui
Changed
@@ -315,11 +315,11 @@ </object> </child> <child> - <object class="GtkAction" id="wiki"> + <object class="GtkAction" id="help"> <property name="stock_id">gtk-help</property> - <property name="name">wiki</property> + <property name="name">help</property> <property name="label" translatable="yes">User manual</property> - <signal handler="on_wiki_activate" name="activate"/> + <signal handler="on_help_activate" name="activate"/> </object> </child> <child> @@ -388,7 +388,7 @@ <menuitem action="item_view_hide_boring_podcasts"/> </menu> <menu action="menuHelp"> - <menuitem action="wiki"/> + <menuitem action="help"/> <menuitem action="item_goto_mygpo"/> <menuitem action="item_check_for_updates"/> <separator/>
View file
gpodder-3.9.3.tar.gz/share/gpodder/ui/gtk/gpodderpreferences.ui -> 3.9.6.tar.gz/share/gpodder/ui/gtk/gpodderpreferences.ui
Changed
@@ -351,8 +351,8 @@ </packing> </child> <child> - <object class="GtkLabel" id="label_username"> - <property name="label" translatable="yes">Username:</property> + <object class="GtkLabel" id="label_server"> + <property name="label" translatable="yes">Server:</property> <property name="visible">True</property> <property name="xalign">1.0</property> </object> @@ -364,8 +364,8 @@ </packing> </child> <child> - <object class="GtkLabel" id="label_password"> - <property name="label" translatable="yes">Password:</property> + <object class="GtkLabel" id="label_username"> + <property name="label" translatable="yes">Username:</property> <property name="visible">True</property> <property name="xalign">1.0</property> </object> @@ -377,15 +377,28 @@ </packing> </child> <child> + <object class="GtkLabel" id="label_password"> + <property name="label" translatable="yes">Password:</property> + <property name="visible">True</property> + <property name="xalign">1.0</property> + </object> + <packing> + <property name="bottom_attach">5</property> + <property name="top_attach">4</property> + <property name="x_options">fill</property> + <property name="y_options"></property> + </packing> + </child> + <child> <object class="GtkButton" id="button_overwrite"> <property name="label" translatable="yes">Replace list on server with local subscriptions</property> <property name="visible">True</property> <signal handler="on_button_overwrite_clicked" name="clicked"/> </object> <packing> - <property name="bottom_attach">6</property> + <property name="bottom_attach">7</property> <property name="right_attach">3</property> - <property name="top_attach">5</property> + <property name="top_attach">6</property> <property name="y_options"></property> </packing> </child> @@ -396,16 +409,16 @@ <property name="xalign">1.0</property> </object> <packing> - <property name="bottom_attach">5</property> - <property name="top_attach">4</property> + <property name="bottom_attach">6</property> + <property name="top_attach">5</property> <property name="x_options">fill</property> <property name="y_options"></property> </packing> </child> <child> - <object class="GtkEntry" id="entry_username"> + <object class="GtkEntry" id="entry_server"> <property name="visible">True</property> - <signal handler="on_username_changed" name="changed"/> + <signal handler="on_server_changed" name="changed"/> </object> <packing> <property name="bottom_attach">3</property> @@ -416,6 +429,19 @@ </packing> </child> <child> + <object class="GtkEntry" id="entry_username"> + <property name="visible">True</property> + <signal handler="on_username_changed" name="changed"/> + </object> + <packing> + <property name="bottom_attach">4</property> + <property name="left_attach">1</property> + <property name="right_attach">3</property> + <property name="top_attach">3</property> + <property name="y_options"></property> + </packing> + </child> + <child> <object class="GtkEntry" id="entry_password"> <property name="visibility">False</property> <property name="is_focus">True</property> @@ -423,10 +449,10 @@ <signal handler="on_password_changed" name="changed"/> </object> <packing> - <property name="bottom_attach">4</property> + <property name="bottom_attach">5</property> <property name="left_attach">1</property> <property name="right_attach">3</property> - <property name="top_attach">3</property> + <property name="top_attach">4</property> <property name="y_options"></property> </packing> </child> @@ -436,10 +462,10 @@ <signal handler="on_device_caption_changed" name="changed"/> </object> <packing> - <property name="bottom_attach">5</property> + <property name="bottom_attach">6</property> <property name="left_attach">1</property> <property name="right_attach">3</property> - <property name="top_attach">4</property> + <property name="top_attach">5</property> <property name="y_options"></property> </packing> </child>
View file
gpodder-3.9.3.tar.gz/src/gpodder/__init__.py -> 3.9.6.tar.gz/src/gpodder/__init__.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -20,10 +20,9 @@ # 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.9.3' -__date__ = '2016-12-22' -__relname__ = 'Whacketts' -__copyright__ = '© 2005-2016 Thomas Perl and the gPodder Team' +__version__ = '3.9.6' +__date__ = '2017-12-29' +__copyright__ = '© 2005-2017 Thomas Perl and the gPodder Team' __license__ = 'GNU General Public License, version 3 or later' __url__ = 'http://gpodder.org/' @@ -104,6 +103,8 @@ ui.win32 = (platform.system() == 'Windows') # Set "osx" to True if we are on Mac OS X ui.osx = (platform.system() == 'Darwin') +# We assume it's a freedesktop.org system if it's not Windows or OS X +ui.freedesktop = not ui.win32 and not ui.osx # i18n setup (will result in "gettext" to be available) # Use _ = gpodder.gettext in modules to enable string translations @@ -146,7 +147,6 @@ # Variables reserved for GUI-specific use (will be set accordingly) ui_folders = [] -credits_file = None icon_file = None images_folder = None user_extensions = None
View file
gpodder-3.9.3.tar.gz/src/gpodder/common.py -> 3.9.6.tar.gz/src/gpodder/common.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/config.py -> 3.9.6.tar.gz/src/gpodder/config.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/core.py -> 3.9.6.tar.gz/src/gpodder/core.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/coverart.py -> 3.9.6.tar.gz/src/gpodder/coverart.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/dbsqlite.py -> 3.9.6.tar.gz/src/gpodder/dbsqlite.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/dbusproxy.py -> 3.9.6.tar.gz/src/gpodder/dbusproxy.py
Changed
@@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/directory.py -> 3.9.6.tar.gz/src/gpodder/directory.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/download.py -> 3.9.6.tar.gz/src/gpodder/download.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -753,6 +753,20 @@ url = youtube.get_real_download_url(self.__episode.url, fmt_ids) url = vimeo.get_real_download_url(url, self._config.vimeo.fileformat) url = escapist_videos.get_real_download_url(url) + + # We should have properly-escaped characters in the URL, but sometimes + # this is not true -- take any characters that are not in ASCII and + # convert them to UTF-8 and then percent-encode the UTF-8 string data + # Example: https://github.com/gpodder/gpodder/issues/232 + url_chars = [] + for char in url: + if ord(char) <= 31 or ord(char) >= 127: + for char in urllib.quote(char.encode('utf-8')): + url_chars.append(char.decode('utf-8')) + else: + url_chars.append(char) + url = u''.join(url_chars) + url = url.strip() downloader = DownloadURLOpener(self.__episode.channel)
View file
gpodder-3.9.3.tar.gz/src/gpodder/escapist_videos.py -> 3.9.6.tar.gz/src/gpodder/escapist_videos.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/extensions.py -> 3.9.6.tar.gz/src/gpodder/extensions.py
Changed
@@ -506,6 +506,20 @@ pass @call_extensions + def on_create_menu(self): + """Called when the Extras menu is created + + You can add additional Extras menu entries here. You have to return a + list of tuples, where the first item is a label and the second item is a + callable that will get no parameter. + + Example return value: + + [('Sync to Smartphone', lambda : ...)] + """ + pass + + @call_extensions def on_episodes_context_menu(self, episodes): """Called when the episode list context menu is opened @@ -582,3 +596,15 @@ """ pass + @call_extensions + def on_application_started(self): + """Called when the application started. + + This is for extensions doing stuff at startup that they don't + want to do if they have just been enabled. + e.g. minimize at startup should not minimize the application when + enabled but only on following startups. + + It is called after on_ui_object_available and on_ui_initialized. + """ + pass
View file
gpodder-3.9.3.tar.gz/src/gpodder/feedcore.py -> 3.9.6.tar.gz/src/gpodder/feedcore.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -36,9 +36,11 @@ try: # Python 2 from rfc822 import mktime_tz + from StringIO import StringIO except ImportError: # Python 3 from email.utils import mktime_tz + from io import StringIO class ExceptionWithData(Exception): @@ -171,27 +173,38 @@ except HTTPError as e: return self._check_statuscode(e, e.geturl()) - if stream.headers.get('content-type', '').startswith('text/html'): - if autodiscovery: - ad = FeedAutodiscovery(url) - ad.feed(stream.read()) - if ad._resolved_url: - try: - self._parse_feed(ad._resolved_url, None, None, False) - return Result(NEW_LOCATION, ad._resolved_url) - except Exception as e: - logger.warn('Feed autodiscovery failed', exc_info=True) - - # Second, try to resolve the URL - url = self._resolve_url(url) - if url: - return Result(NEW_LOCATION, url) - - raise InvalidFeed('Got HTML document instead') - - feed = podcastparser.parse(url, stream) - feed['headers'] = stream.headers - return self._check_statuscode(stream, feed) + data = stream + if autodiscovery and not is_local and stream.headers.get('content-type', '').startswith('text/html'): + # We use StringIO in case the stream needs to be read again + data = StringIO(stream.read()) + ad = FeedAutodiscovery(url) + ad.feed(data.read()) + if ad._resolved_url: + try: + self._parse_feed(ad._resolved_url, None, None, False) + return Result(NEW_LOCATION, ad._resolved_url) + except Exception as e: + logger.warn('Feed autodiscovery failed', exc_info=True) + + # Second, try to resolve the URL + url = self._resolve_url(url) + if url: + return Result(NEW_LOCATION, url) + + # Reset the stream so podcastparser can give it a go + data.seek(0) + + try: + feed = podcastparser.parse(url, data) + except ValueError as e: + raise InvalidFeed(u'Could not parse feed: {msg}'.format(msg=e)) + + if is_local: + feed['headers'] = {} + return Result(UPDATED_FEED, feed) + else: + feed['headers'] = stream.headers + return self._check_statuscode(stream, feed) def fetch(self, url, etag=None, modified=None): return self._parse_feed(url, etag, modified)
View file
gpodder-3.9.3.tar.gz/src/gpodder/feedservice.py -> 3.9.6.tar.gz/src/gpodder/feedservice.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/__init__.py -> 3.9.6.tar.gz/src/gpodder/gtkui/__init__.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/config.py -> 3.9.6.tar.gz/src/gpodder/gtkui/config.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/desktop/__init__.py -> 3.9.6.tar.gz/src/gpodder/gtkui/desktop/__init__.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/desktop/channel.py -> 3.9.6.tar.gz/src/gpodder/gtkui/desktop/channel.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -148,7 +148,8 @@ def cover_download_finished(self, channel, pixbuf): def set_cover(channel, pixbuf): if self.channel == channel: - self.imgCover.set_from_pixbuf(self.scale_pixbuf(pixbuf)) + if pixbuf is not None: + self.imgCover.set_from_pixbuf(self.scale_pixbuf(pixbuf)) if self.show_on_cover_load: self.main_window.show() self.show_on_cover_load = False
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/desktop/episodeselector.py -> 3.9.6.tar.gz/src/gpodder/gtkui/desktop/episodeselector.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/desktop/podcastdirectory.py -> 3.9.6.tar.gz/src/gpodder/gtkui/desktop/podcastdirectory.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/desktop/preferences.py -> 3.9.6.tar.gz/src/gpodder/gtkui/desktop/preferences.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -281,6 +281,7 @@ # Initialize the UI state with configuration settings self.checkbutton_enable.set_active(self._config.mygpo.enabled) + self.entry_server.set_text(self._config.mygpo.server) self.entry_username.set_text(self._config.mygpo.username) self.entry_password.set_text(self._config.mygpo.password) self.entry_caption.set_text(self._config.mygpo.device.caption) @@ -408,6 +409,10 @@ if new_enabled == now_enabled: model.set_value(it, self.C_TOGGLE, new_enabled) + if now_enabled: + self.on_extension_enabled(container.module) + else: + self.on_extension_disabled(container.module) elif container.error is not None: self.show_message(container.error.message, _('Extension cannot be activated'), important=True) @@ -528,6 +533,9 @@ def on_button_youtube_api_key_clicked(self, widget): util.open_website('http://wiki.gpodder.org/wiki/Youtube') + def on_server_changed(self, widget): + self._config.mygpo.server = widget.get_text() + def on_username_changed(self, widget): self._config.mygpo.username = widget.get_text()
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/desktop/sync.py -> 3.9.6.tar.gz/src/gpodder/gtkui/desktop/sync.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/desktop/welcome.py -> 3.9.6.tar.gz/src/gpodder/gtkui/desktop/welcome.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/desktopfile.py -> 3.9.6.tar.gz/src/gpodder/gtkui/desktopfile.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/download.py -> 3.9.6.tar.gz/src/gpodder/gtkui/download.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/draw.py -> 3.9.6.tar.gz/src/gpodder/gtkui/draw.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/interface/__init__.py -> 3.9.6.tar.gz/src/gpodder/gtkui/interface/__init__.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/interface/addpodcast.py -> 3.9.6.tar.gz/src/gpodder/gtkui/interface/addpodcast.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/interface/common.py -> 3.9.6.tar.gz/src/gpodder/gtkui/interface/common.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -154,8 +154,8 @@ else: return None - def show_login_dialog(self, title, message, username=None, password=None, - username_prompt=None, register_callback=None, register_text=None): + def show_login_dialog(self, title, message, root_url=None, username=None, password=None, + username_prompt=None, register_callback=None, register_text=None, ask_server=False): if username_prompt is None: username_prompt = _('Username') @@ -177,36 +177,50 @@ if register_callback is not None: dialog.add_button(register_text, gtk.RESPONSE_HELP) + server_entry = gtk.Entry() + server_entry.set_tooltip_text(_('hostname or root URL (e.g. https://gpodder.net)')) username_entry = gtk.Entry() password_entry = gtk.Entry() + server_entry.connect('activate', lambda w: username_entry.grab_focus()) username_entry.connect('activate', lambda w: password_entry.grab_focus()) password_entry.set_visibility(False) password_entry.set_activates_default(True) + if root_url is not None: + server_entry.set_text(root_url) if username is not None: username_entry.set_text(username) if password is not None: password_entry.set_text(password) - table = gtk.Table(2, 2) + table = gtk.Table(3, 2) table.set_row_spacings(6) table.set_col_spacings(6) + server_label = gtk.Label() + server_label.set_markup('<b>' + _('Server') + ':</b>') + username_label = gtk.Label() username_label.set_markup('<b>' + username_prompt + ':</b>') - username_label.set_alignment(0.0, 0.5) - table.attach(username_label, 0, 1, 0, 1, gtk.FILL, 0) - table.attach(username_entry, 1, 2, 0, 1) password_label = gtk.Label() password_label.set_markup('<b>' + _('Password') + ':</b>') - password_label.set_alignment(0.0, 0.5) - table.attach(password_label, 0, 1, 1, 2, gtk.FILL, 0) - table.attach(password_entry, 1, 2, 1, 2) + + label_entries = [(username_label, username_entry), + (password_label, password_entry)] + + if ask_server: + label_entries.insert(0, (server_label, server_entry)) + + for i, (label, entry) in enumerate(label_entries): + label.set_alignment(0.0, 0.5) + table.attach(label, 0, 1, i, i + 1, gtk.FILL, 0) + table.attach(entry, 1, 2, i, i + 1) dialog.vbox.pack_end(table, True, True, 0) dialog.show_all() + username_entry.grab_focus() response = dialog.run() while response == gtk.RESPONSE_HELP: @@ -214,13 +228,17 @@ response = dialog.run() password_entry.set_visibility(True) + root_url = server_entry.get_text() username = username_entry.get_text() password = password_entry.get_text() success = (response == gtk.RESPONSE_OK) dialog.destroy() - return (success, (username, password)) + if ask_server: + return (success, (root_url, username, password)) + else: + return (success, (username, password)) def show_copy_dialog(self, src_filename, dst_filename=None, dst_directory=None, title=_('Select destination')): if dst_filename is None:
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/interface/configeditor.py -> 3.9.6.tar.gz/src/gpodder/gtkui/interface/configeditor.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/interface/progress.py -> 3.9.6.tar.gz/src/gpodder/gtkui/interface/progress.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/interface/tagcloud.py -> 3.9.6.tar.gz/src/gpodder/gtkui/interface/tagcloud.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/macosx.py -> 3.9.6.tar.gz/src/gpodder/gtkui/macosx.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/main.py -> 3.9.6.tar.gz/src/gpodder/gtkui/main.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -118,6 +118,8 @@ self.db = self.core.db self.model = self.core.model self.options = options + self.extensions_merge_ids = [] + self.extensions_actions = [] BuilderWidget.__init__(self, None) def new(self): @@ -231,10 +233,14 @@ # Set up the first instance of MygPoClient self.mygpo_client = my.MygPoClient(self.config) + self.inject_extensions_menu() + gpodder.user_extensions.on_ui_initialized(self.model, self.extensions_podcast_update_cb, self.extensions_episode_download_cb) + gpodder.user_extensions.on_application_started() + # load list of user applications for audio playback self.user_apps_reader = UserAppsReader(['audio', 'video']) util.run_in_background(self.user_apps_reader.read) @@ -277,6 +283,35 @@ self.config.software_update.last_check = int(time.time()) self.check_for_updates(silent=True) + def inject_extensions_menu(self): + """ + Update Extras/Extensions menu. + Called at startup and when en/dis-abling extenstions. + """ + def gen_callback(label, callback): + return lambda widget: callback() + + for action in self.extensions_actions: + self.actiongroup1.remove_action(action) + self.extensions_actions = [] + uimanager = self.uimanager1 + for merge_id in self.extensions_merge_ids: + uimanager.remove_ui(merge_id) + self.extensions_merge_ids = [] + + extension_entries = gpodder.user_extensions.on_create_menu() + if extension_entries: + for i, (label, callback) in enumerate(extension_entries): + action_id = "ext.action_%d" % i + action = gtk.Action(action_id, label, label, None) + action.connect('activate', gen_callback(label, callback)) + self.actiongroup1.add_action(action) + self.extensions_actions.append(action) + + merge_id = uimanager.new_merge_id() + uimanager.add_ui(merge_id, "ui/mainMenu/menuExtras", action_id, action_id, gtk.UI_MANAGER_MENUITEM, False) + self.extensions_merge_ids.append(merge_id) + def find_partial_downloads(self): def start_progress_callback(count): self.partial_downloads_indicator = ProgressIndicator( @@ -766,6 +801,8 @@ def init_episode_list_treeview(self): # For loading the list model self.episode_list_model = EpisodeListModel(self.config, self.on_episode_list_filter_changed) + self.episode_list_last_selected_row = None + self.episode_list_selection_delta = 0 if self.config.episode_list_view_mode == EpisodeListModel.VIEW_UNDELETED: self.item_view_episodes_undeleted.set_active(True) @@ -906,6 +943,15 @@ selection.connect('changed', self.on_episode_list_selection_changed) def on_episode_list_selection_changed(self, selection): + if selection.count_selected_rows() == 1: + _, paths = selection.get_selected_rows() + (index,) = paths[0] + if self.episode_list_last_selected_row is not None: + self.episode_list_selection_delta = index - self.episode_list_last_selected_row + self.episode_list_last_selected_row = index + else: + self.episode_list_last_selected_row = None + # Update the toolbar buttons self.play_or_download() # and the shownotes @@ -2532,6 +2578,23 @@ if not episodes: return False + # If there is only one episode selected, we restore the row-based selection afterwards + # TODO: We could generalize this and allow previous-selection to work every time we have + # a contiguous selection of multiple rows, too (problem with non-contiguous selection + # being that it's unclear "where" in the old selection we want to pick up the selection) + path_to_select = None + previous_selection_delta = self.episode_list_selection_delta + if len(episodes) == 1: + model = self.treeAvailable.get_model() + episode = episodes[0] + + it = model.get_iter_first() + while it is not None: + if model.get_value(it, EpisodeListModel.C_EPISODE) == episode: + path_to_select = model.get_path(it) + break + it = model.iter_next(it) + if skip_locked: episodes = [e for e in episodes if not e.archive] @@ -2562,6 +2625,22 @@ self.update_podcast_list_model(channel_urls) self.play_or_download() + # We have a specific path that we want to select afterwards + if path_to_select is not None: + (index,) = path_to_select + # If the last movement of the selection was 1 row up, continue this motion; + # this allows deletion of episodes going from the bottom up (row-by-row) + if previous_selection_delta == -1: + index -= 1 + model = self.treeAvailable.get_model() + selection = self.treeAvailable.get_selection() + rows = len(model) + if index >= rows: + # Clamp to the last row (if the last episode has been deleted) + index = rows - 1 + selection.select_path((index,)) + + @util.run_in_background def thread_proc(): episode_urls = set() @@ -2871,39 +2950,45 @@ parent_window=self.main_window, \ mygpo_client=self.mygpo_client, \ on_send_full_subscriptions=self.on_send_full_subscriptions, \ - on_itemExportChannels_activate=self.on_itemExportChannels_activate) + on_itemExportChannels_activate=self.on_itemExportChannels_activate, \ + on_extension_enabled=self.on_extension_enabled, \ + on_extension_disabled=self.on_extension_disabled) def on_goto_mygpo(self, widget): self.mygpo_client.open_website() def on_download_subscriptions_from_mygpo(self, action=None): + def after_login(): + title = _('Subscriptions on %(server)s') \ + % {'server': self.config.mygpo.server} + dir = gPodderPodcastDirectory(self.gPodder, + _config=self.config, + custom_title=title, + add_podcast_list=self.add_podcast_list, + hide_url_entry=True) + + url = self.mygpo_client.get_download_user_subscriptions_url() + dir.download_opml_file(url) + title = _('Login to gpodder.net') message = _('Please login to download your subscriptions.') def on_register_button_clicked(): util.open_website('http://gpodder.net/register/') - success, (username, password) = self.show_login_dialog(title, message, + success, (root_url, username, password) = self.show_login_dialog(title, message, + self.config.mygpo.server, self.config.mygpo.username, self.config.mygpo.password, - register_callback=on_register_button_clicked) + register_callback=on_register_button_clicked, + ask_server=True) if not success: return + self.config.mygpo.server = root_url self.config.mygpo.username = username self.config.mygpo.password = password - dir = gPodderPodcastDirectory(self.gPodder, _config=self.config, \ - custom_title=_('Subscriptions on gpodder.net'), \ - add_podcast_list=self.add_podcast_list, - hide_url_entry=True) - - # TODO: Refactor this into "gpodder.my" or mygpoclient, so that - # we do not have to hardcode the URL here - OPML_URL = 'http://gpodder.net/subscriptions/%s.opml' % self.config.mygpo.username - url = util.url_add_authentication(OPML_URL, \ - self.config.mygpo.username, \ - self.config.mygpo.password) - dir.download_opml_file(url) + util.idle_add(after_login)
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/model.py -> 3.9.6.tar.gz/src/gpodder/gtkui/model.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -872,6 +872,8 @@ del self._cover_cache[podcast_url] def add_cover_by_channel(self, channel, pixbuf): + if pixbuf is None: + return # Remove older images from cache self.clear_cover_cache(channel.url)
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/services.py -> 3.9.6.tar.gz/src/gpodder/gtkui/services.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -120,11 +120,15 @@ pixbuf = gtk.gdk.pixbuf_new_from_file(filename) except Exception, e: logger.warn('Cannot load cover art', exc_info=True) - if filename.startswith(channel.cover_file): - logger.info('Deleting broken cover: %s', filename) - util.delete_file(filename) - filename = get_filename() + if pixbuf is None and filename.startswith(channel.cover_file): + logger.info('Deleting broken cover: %s', filename) + util.delete_file(filename) + filename = get_filename() + try: pixbuf = gtk.gdk.pixbuf_new_from_file(filename) + except Exception as e: + logger.warn('Corrupt cover art on server, deleting', exc_info=True) + util.delete_file(filename) if async: self.notify('cover-available', channel, pixbuf)
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/shownotes.py -> 3.9.6.tar.gz/src/gpodder/gtkui/shownotes.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/gtkui/widgets.py -> 3.9.6.tar.gz/src/gpodder/gtkui/widgets.py
Changed
@@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/jsonconfig.py -> 3.9.6.tar.gz/src/gpodder/jsonconfig.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/log.py -> 3.9.6.tar.gz/src/gpodder/log.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/minidb.py -> 3.9.6.tar.gz/src/gpodder/minidb.py
Changed
@@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/model.py -> 3.9.6.tar.gz/src/gpodder/model.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # Copyright (c) 2011 Neal H. Walfield # # gPodder is free software; you can redistribute it and/or modify @@ -145,6 +145,13 @@ episode.title = entry['title'] episode.link = entry['link'] episode.description = entry['description'] + if entry.get('description_html'): + episode.description_html = entry['description_html'] + # TODO: This really should be handled in podcastparser and not here. + elif util.is_html(entry['description']): + episode.description_html = entry['description'] + episode.description = util.remove_html_tags(entry['description']) + episode.total_time = entry['total_time'] episode.published = entry['published'] episode.payment_url = entry['payment_url'] @@ -202,6 +209,7 @@ self.mime_type = 'application/octet-stream' self.guid = '' self.description = '' + self.description_html = '' self.link = '' self.published = 0 self.download_filename = None @@ -333,14 +341,6 @@ age_prop = property(fget=get_age_string) - @property - def description_html(self): - # XXX: That's not a very well-informed heuristic to check - # if the description already contains HTML. Better ideas? - if '<' in self.description: - return self.description - - return self.description.replace('\n', '<br>') def one_line_description(self): MAX_LINE_LENGTH = 120 @@ -633,7 +633,7 @@ return '-' def update_from(self, episode): - for k in ('title', 'url', 'description', 'link', 'published', 'guid', 'file_size', 'payment_url'): + for k in ('title', 'url', 'description', 'description_html', 'link', 'published', 'guid', 'file_size', 'payment_url'): setattr(self, k, getattr(episode, k))
View file
gpodder-3.9.3.tar.gz/src/gpodder/my.py -> 3.9.6.tar.gz/src/gpodder/my.py
Changed
@@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -638,6 +638,12 @@ def open_website(self): util.open_website('http://' + self._config.mygpo.server) + def get_download_user_subscriptions_url(self): + OPML_URL = self._client.locator.subscriptions_uri() + url = util.url_add_authentication(OPML_URL, \ + self._config.mygpo.username, \ + self._config.mygpo.password) + return url class Directory(object): def __init__(self):
View file
gpodder-3.9.3.tar.gz/src/gpodder/opml.py -> 3.9.6.tar.gz/src/gpodder/opml.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/player.py -> 3.9.6.tar.gz/src/gpodder/player.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -21,7 +21,32 @@ # gpodder.player - Podcatcher implementation of the Media Player D-Bus API # Thomas Perl <thp@gpodder.org>; 2010-04-25 # -# Specification: http://gpodder.org/wiki/Media_Player_D-Bus_API + +# +# This API specification aims at providing a documented, easy-to-use API for +# getting and setting the media player position via D-Bus. This should allow +# media players (such as Panucci) and podcast aggregators (such as gPodder) to +# work together and synchronize the playback position of media files. +# +# == Interface: org.gpodder.player == +# +# - PlaybackStarted(uint32 position, string file_uri) +# +# Emitted when the media player starts playback of a given file at file_uri +# at the position position. +# +# +# - PlaybackStopped(uint32 start_position, uint32 end_position, +# uint32 total_time, string file_uri) +# +# Emitted when the user stops/pauses playback, when the playback ends or the +# player is closed. The file URI is in file_uri, the start time of the +# segment that has just been played is in start_position, the stop time in +# end_position and the (detected) total time of the file is in total_time. +# +# Seeking in the file should also emit a PlaybackStopped signal (at the +# position where the seek is initialized) and a PlaybackStarted signal (at +# the position to which the seek jumps). #
View file
gpodder-3.9.3.tar.gz/src/gpodder/plugins/__init__.py -> 3.9.6.tar.gz/src/gpodder/plugins/__init__.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/plugins/soundcloud.py -> 3.9.6.tar.gz/src/gpodder/plugins/soundcloud.py
Changed
@@ -2,7 +2,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -35,6 +35,7 @@ # Python 2.6 already ships with a nice "json" module import json +import logging import os import time @@ -47,6 +48,9 @@ CONSUMER_KEY = 'zrweghtEtnZLpXf3mlm8mQ' +logger = logging.getLogger(__name__) + + def soundcloud_parsedate(s): """Parse a string into a unix timestamp @@ -109,22 +113,29 @@ def commit_cache(self): json.dump(self.cache, open(self.cache_file, 'w')) - def get_coverart(self): + def get_user_info(self): global CONSUMER_KEY - key = ':'.join((self.username, 'avatar_url')) + key = ':'.join((self.username, 'user_info')) if key in self.cache: return self.cache[key] - image = None try: - json_url = 'http://api.soundcloud.com/users/%s.json?consumer_key=%s' % (self.username, CONSUMER_KEY) + json_url = 'https://api.soundcloud.com/users/%s.json?consumer_key=%s' % (self.username, CONSUMER_KEY) user_info = json.load(util.urlopen(json_url)) - image = user_info.get('avatar_url', None) - self.cache[key] = image + self.cache[key] = user_info finally: self.commit_cache() - return image + return user_info + + def get_coverart(self): + user_info = self.get_user_info() + return user_info.get('avatar_url', None) + + def get_user_id(self): + user_info = self.get_user_info() + return user_info.get('id', None) + def get_tracks(self, feed): """Get a generator of tracks from a SC user @@ -133,10 +144,21 @@ track it can find for its user.""" global CONSUMER_KEY try: - json_url = 'http://api.soundcloud.com/users/%(user)s/%(feed)s.json?filter=downloadable&consumer_key=%(consumer_key)s&limit=200' \ - % { "user":self.username, "feed":feed, "consumer_key": CONSUMER_KEY } - tracks = (track for track in json.load(util.urlopen(json_url)) \ - if track['downloadable']) + json_url = 'https://api.soundcloud.com/users/%(user)s/%(feed)s.json?filter=downloadable&consumer_key=%(consumer_key)s&limit=200' \ + % { "user":self.get_user_id(), "feed":feed, "consumer_key": CONSUMER_KEY } + logger.debug("loading %s", json_url) + + json_tracks = json.loads(util.urlopen(json_url).read().decode('utf-8')) + tracks = [track for track in json_tracks if track['downloadable']] + total_count = len(tracks) + len([track for track in json_tracks + if not track['downloadable']]) + + if len(tracks) == 0 and total_count > 0: + logger.warn("Download of all %i %s of user %s is disabled" % + (total_count, feed, self.username)) + else: + logger.info("%i/%i downloadable tracks for user %s %s feed" % + (len(tracks), total_count, self.username, feed)) for track in tracks: # Prefer stream URL (MP3), fallback to download URL @@ -152,7 +174,7 @@ yield { 'title': track.get('title', track.get('permalink')) or _('Unknown track'), - 'link': track.get('permalink_url') or 'http://soundcloud.com/'+self.username, + 'link': track.get('permalink_url') or 'https://soundcloud.com/'+self.username, 'description': track.get('description') or _('No description available'), 'url': url, 'file_size': int(filesize), @@ -164,7 +186,7 @@ self.commit_cache() class SoundcloudFeed(object): - URL_REGEX = re.compile('http://([a-z]+\.)?soundcloud\.com/([^/]+)$', re.I) + URL_REGEX = re.compile('https?://([a-z]+\.)?soundcloud\.com/([^/]+)$', re.I) @classmethod def handle_url(cls, url): @@ -184,7 +206,7 @@ return self.sc_user.get_coverart() def get_link(self): - return 'http://soundcloud.com/%s' % self.username + return 'https://soundcloud.com/%s' % self.username def get_description(self): return _('Tracks published by %s on Soundcloud.') % self.username @@ -207,7 +229,7 @@ return episodes, seen_guids class SoundcloudFavFeed(SoundcloudFeed): - URL_REGEX = re.compile('http://([a-z]+\.)?soundcloud\.com/([^/]+)/favorites', re.I) + URL_REGEX = re.compile('https?://([a-z]+\.)?soundcloud\.com/([^/]+)/favorites', re.I) def __init__(self, username): @@ -217,7 +239,7 @@ return _('%s\'s favorites on Soundcloud') % self.username def get_link(self): - return 'http://soundcloud.com/%s/favorites' % self.username + return 'https://soundcloud.com/%s/favorites' % self.username def get_description(self): return _('Tracks favorited by %s on Soundcloud.') % self.username @@ -230,5 +252,5 @@ model.register_custom_handler(SoundcloudFavFeed) def search_for_user(query): - json_url = 'http://api.soundcloud.com/users.json?q=%s&consumer_key=%s' % (urllib.quote(query), CONSUMER_KEY) + json_url = 'https://api.soundcloud.com/users.json?q=%s&consumer_key=%s' % (urllib.quote(query), CONSUMER_KEY) return json.load(util.urlopen(json_url))
View file
gpodder-3.9.3.tar.gz/src/gpodder/query.py -> 3.9.6.tar.gz/src/gpodder/query.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/schema.py -> 3.9.6.tar.gz/src/gpodder/schema.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -28,6 +28,8 @@ import logging logger = logging.getLogger(__name__) +from gpodder import util + EpisodeColumns = ( 'podcast_id', 'title', @@ -47,6 +49,7 @@ 'current_position_updated', 'last_playback', 'payment_url', + 'description_html', ) PodcastColumns = ( @@ -69,7 +72,7 @@ 'cover_thumb', ) -CURRENT_VERSION = 6 +CURRENT_VERSION = 7 # SQL commands to upgrade old database versions to new ones @@ -103,6 +106,14 @@ (5, 6, """ ALTER TABLE podcast ADD COLUMN cover_thumb BLOB NULL DEFAULT NULL """), + + # Version 7: Add HTML description + (6, 7, """ + ALTER TABLE episode ADD COLUMN description_html TEXT NOT NULL DEFAULT '' + UPDATE episode SET description_html=description WHERE is_html(description) + UPDATE episode SET description=remove_html_tags(description_html) WHERE is_html(description) + UPDATE podcast SET http_last_modified=NULL, http_etag=NULL + """), ] def initialize_database(db): @@ -159,7 +170,8 @@ current_position INTEGER NOT NULL DEFAULT 0, current_position_updated INTEGER NOT NULL DEFAULT 0, last_playback INTEGER NOT NULL DEFAULT 0, - payment_url TEXT NULL DEFAULT NULL + payment_url TEXT NULL DEFAULT NULL, + description_html TEXT NOT NULL DEFAULT '' ) """) @@ -187,6 +199,9 @@ initialize_database(db) return + db.create_function('is_html', 1, util.is_html) + db.create_function('remove_html_tags', 1, util.remove_html_tags) + version = db.execute('SELECT version FROM version').fetchone()[0] if version == CURRENT_VERSION: return @@ -250,6 +265,7 @@ None, 0, row['sync_to_devices'], + None, ) new_db.execute(""" INSERT INTO podcast VALUES (%s) @@ -281,10 +297,18 @@ row['current_position_updated'], 0, None, + '', ) new_db.execute(""" INSERT INTO episode VALUES (%s) """ % ', '.join('?'*len(values)), values) + # do 6 -> 7 upgrade (description_html) + new_db.create_function('is_html', 1, util.is_html) + new_db.create_function('remove_html_tags', 1, util.remove_html_tags) + new_db.execute("UPDATE episode SET description_html=description WHERE is_html(description)") + new_db.execute("UPDATE episode SET description=remove_html_tags(description_html) WHERE is_html(description)") + new_db.execute("UPDATE podcast SET http_last_modified=NULL, http_etag=NULL") + old_cur.close() old_db.close()
View file
gpodder-3.9.3.tar.gz/src/gpodder/services.py -> 3.9.6.tar.gz/src/gpodder/services.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/sync.py -> 3.9.6.tar.gz/src/gpodder/sync.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/test/__init__.py -> 3.9.6.tar.gz/src/gpodder/test/__init__.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/test/model.py -> 3.9.6.tar.gz/src/gpodder/test/model.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/unittests.py -> 3.9.6.tar.gz/src/gpodder/unittests.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/util.py -> 3.9.6.tar.gz/src/gpodder/util.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # Copyright (c) 2011 Neal H. Walfield # # gPodder is free software; you can redistribute it and/or modify @@ -29,6 +29,7 @@ are not tied to any specific part of gPodder. """ +import json import gpodder @@ -225,7 +226,7 @@ PREFIXES = { 'fb:': 'http://feeds.feedburner.com/%s', 'yt:': 'http://www.youtube.com/rss/user/%s/videos.rss', - 'sc:': 'http://soundcloud.com/%s', + 'sc:': 'https://soundcloud.com/%s', # YouTube playlists. To get a list of playlists per-user, use: # https://gdata.youtube.com/feeds/api/users/<username>/playlists 'ytpl:': 'http://gdata.youtube.com/feeds/api/playlists/%s', @@ -595,6 +596,19 @@ pass +def is_html(text): + """Heuristically tell if text is HTML + + By looking for an open tag (more or less:) + >>> is_html('<h1>HELLO</h1>') + True + >>> is_html('a < b < c') + False + """ + html_test = re.compile('<[a-z][a-z0-9]*(?:\s.*?>|\/?>)', re.IGNORECASE | re.DOTALL) + return bool(html_test.search(text)) + + def remove_html_tags(html): """ Remove HTML tags from a string and replace numeric and @@ -1759,7 +1773,7 @@ episode.db.commit() -def get_update_info(url='http://gpodder.org/downloads'): +def get_update_info(): """ Get up to date release information from gpodder.org. @@ -1771,14 +1785,14 @@ Example result (outdated version, 10 days after release): (False, '3.0.5', '2012-02-29', 10) """ - data = urlopen(url).read() - id_field_re = re.compile(r'<([a-z]*)[^>]*id="([^"]*)"[^>]*>([^<]*)</\1>') - info = dict((m.group(2), m.group(3)) for m in id_field_re.finditer(data)) + url = 'https://api.github.com/repos/gpodder/gpodder/releases/latest' + data = urlopen(url).read().decode('utf-8') + info = json.loads(data) - latest_version = info['latest-version'] - release_date = info['release-date'] + latest_version = info.get('tag_name','').replace('gpodder-','') + release_date = info['published_at'] - release_parsed = datetime.datetime.strptime(release_date, '%Y-%m-%d') + release_parsed = datetime.datetime.strptime(release_date, '%Y-%m-%dT%H:%M:%SZ') days_since_release = (datetime.datetime.today() - release_parsed).days convert = lambda s: tuple(int(x) for x in s.split('.')) @@ -1833,7 +1847,7 @@ process = subprocess.Popen(['ifconfig'], stdout=subprocess.PIPE) stdout, _ = process.communicate() for i in re.split('\n(?!\t)', stdout, re.MULTILINE): - b = re.match('(\\w+):.*status: active$', i, re.MULTILINE | re.DOTALL) + b = re.match('(\\w+):.*status: (active|associated)$', i, re.MULTILINE | re.DOTALL) if b: yield b.group(1)
View file
gpodder-3.9.3.tar.gz/src/gpodder/vimeo.py -> 3.9.6.tar.gz/src/gpodder/vimeo.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/src/gpodder/youtube.py -> 3.9.6.tar.gz/src/gpodder/youtube.py
Changed
@@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
3.9.6.tar.gz/tools/create-desktop-icon.py
Added
@@ -0,0 +1,29 @@ +#!/usr/bin/env python +# create-desktop-icon.py: Create a Desktop icon +# 2016-12-22 Thomas Perl <m@thp.io> + +import os +import sys + +BASE = os.path.normpath(os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))) + +TEMPLATE = """# Created by %(__file__)s +[Desktop Entry] +Name=gPodder (Git) +Exec=%(BASE)s/bin/gpodder +Icon=%(BASE)s/share/icons/hicolor/scalable/apps/gpodder.svg +Terminal=false +Type=Application +""" % locals() + +DESTINATION = os.path.expanduser('~/Desktop/gpodder-git.desktop') + +if os.path.exists(DESTINATION): + print '%(DESTINATION)s already exists, not overwriting' + sys.exit(1) + +with open(DESTINATION, 'w') as fp: + fp.write(TEMPLATE) +os.chmod(DESTINATION, 0755) + +print 'Wrote %(DESTINATION)s' % locals()
View file
gpodder-3.9.3.tar.gz/tools/fake-dbus-module/dbus/__init__.py -> 3.9.6.tar.gz/tools/fake-dbus-module/dbus/__init__.py
Changed
@@ -2,6 +2,7 @@ class SessionBus(object): def __init__(self, *args, **kwargs): + self.fake = True pass def add_signal_receiver(self, *args, **kwargs):
View file
gpodder-3.9.3.tar.gz/tools/mac-osx/makefile -> 3.9.6.tar.gz/tools/mac-osx/makefile
Changed
@@ -1,6 +1,6 @@ # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/tools/win32-launcher/gpodder.c -> 3.9.6.tar.gz/tools/win32-launcher/gpodder.c
Changed
@@ -1,7 +1,7 @@ /** * gPodder - A media aggregator and podcast client - * Copyright (c) 2005-2016 Thomas Perl and the gPodder Team + * Copyright (c) 2005-2017 Thomas Perl and the gPodder Team * * gPodder is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/tools/win32-launcher/makefile -> 3.9.6.tar.gz/tools/win32-launcher/makefile
Changed
@@ -1,6 +1,6 @@ # # gPodder - A media aggregator and podcast client -# Copyright (c) 2005-2016 Thomas Perl and the gPodder Team +# Copyright (c) 2005-2017 Thomas Perl and the gPodder Team # # gPodder is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by
View file
gpodder-3.9.3.tar.gz/tools/win32-setup/makefile -> 3.9.6.tar.gz/tools/win32-setup/makefile
Changed
@@ -9,7 +9,8 @@ CHMOD := chmod # Simple script that calls ISCC.exe via Wine, and passes arguments -ISCC ?= iscc + +ISCC ?= "$(HOME)/.wine/drive_c/Program Files (x86)/Inno Setup 5/ISCC.exe" SETUP_SCRIPT := gpodder-setup.iss SETUP_SCRIPT_IN := $(SETUP_SCRIPT).in @@ -27,7 +28,12 @@ $(PYTHON) ../localdepends.py cp -rpv ../fake-dbus-module/dbus ../../src/ $(MAKE) -C $(SOURCE_ROOT) messages - $(ISCC) $< + if [ ! -f $(ISCC) ]; then \ + wget -O innosetup-installer.exe http://www.jrsoftware.org/download.php/is.exe; \ + xvfb-run wine innosetup-installer.exe /verysilent; \ + rm -f innosetup-installer.exe; \ + fi + xvfb-run wine $(ISCC) $< $(CHMOD) -x $@ $(LAUNCHER_ROOT)/$(GPODDER_EXE):
View file
gpodder-3.9.3.tar.gz/PKG-INFO
Deleted
@@ -1,10 +0,0 @@ -Metadata-Version: 1.0 -Name: gpodder -Version: 3.9.3 -Summary: Media aggregator and podcast client -Home-page: http://gpodder.org/ -Author: Thomas Perl -Author-email: thp@gpodder.org -License: GNU General Public License, version 3 or later -Description: UNKNOWN -Platform: UNKNOWN
View file
gpodder-3.9.3.tar.gz/share/gpodder/credits.txt
Deleted
@@ -1,227 +0,0 @@ -Aaron Wright -Adolfo Jayme Barrientos -Adrien Beaucreux -Alain Tauch -Alessandro Campidori -Alexander Boström -Alex Bennee -Alex Ghitza -Alex Mayer -Alistair Sutton -Amiad Bareli -Anders Kvist -Andrea Carpineti -Andreas Böttger -Andreas Piesk -Andrei Dolganov -Andrew Bennett -Andy Busch -Antonio Roversi -Aravind Seshadri -Arne Stierman -Asier Iturralde Sarasola -Atheos -Atte André Jensen -audioworld -Bastian Kleineidam -Bastian Staeck -Baurzhan Muftakhidinov -Ben Hummon -Bernd Schlapsi -Bernhard Walle -Bill Barnard -Bill Peters -Bjørn Rasmussen -Boryslav Larin -brabadu -Brian J. Cohen -bttfmcf -Byeongkeon Kim -Caleb Clarke -Camille Moncelier -Carlos Moffat -Casey Watson -Cesar Alcalde -Chionsas -Chris Arnold -Chris Moffitt -Christian Boxdörfer -Clark Burbidge -Corey Goldberg -corq -Cory Albrecht -daggpod -Daniel Ramos -Daniel Sandman -Daniel Schaal -Danilo Shiga -darkmanx -David Spreen -David Štancl -Doug Hellmann -Dov Feldstern -Dudu Maroja -Edouard Pellerin -Eduard Baer -Eduardo Maroja -Eric Le Lay -Eugene Nikolsky -Fabio Fiorentini -FFranci72 -Filip Kłębczyk -Floriano Scioscia -Florian Richter -Frank Harper -Franz Seidl -Fred Kwame -FriedBunny -Gergely Imreh -Gerrit Sangel -Gherhardt Mathisz -Gilles Lehoux -Gonçalo Cordeiro -Götz Waschk -Haim Roitgrund -Harry Coal -hatul -Heinz Erhard -Henri Shustak -Hex -Holger Bauer -Holger Leskien -Iwan van der Kleijn -jaah -Janne Makela -Jens Persson -Jens Thiele -Jérôme Chabod -Jerry Moss -Jessica Henline -Jim Nygård -João Trindade -Joel Calado -John Ferguson -John Rabotnik -Jonas Kölker -Jon Hedemann -Jörg Thalheim -José Luis Fustel -Joseph Bleau -Joseph Wickremasinghe -Josh Mondragon -Julio Acuña -Junio C Hamano -Jürgen Schinker -Justin Forest -Kitchener-Waterloo LUG -Konstantin Ryabitsev -kvikende -Leonid Ponomarev -Louis Carlioz Luigi -Marco Antonio Villegas Vega -Marcos Hernández -Mark Alford -Marko Vertainen -Markus Golser -Markus Wamser -Martin Kjellqvist -Mathias Rav -Matt Baker -Maurizio Ballo -Maxim Prohorov -Mehmet Nur Olcay -Michael Salim -Mika Leppinen -Mike Coulson -Mikolaj Laczynski -Mohammad Dashtizadeh -Mohammadreza Abdollahzadeh -Morten Juhl-Johansen Zölde-Fejér -Morten Nygaard Åsnes -M. Schneider -Mykola Nikishov -narf -Neal H. Walfield -Nelson Ferreira -Nick L. -Nick Sonneveld -Nick Stevens -Nicolas Quienot -Niklas Fiekas -Nikolaos Papagrigoriou -Olivier Brisson -Ondrej Vesely -Ortwin Forster -Paul Elliot -Paul Rudkin -Pavel Mlčoch -Peter Hoffmann -Peter Hultqvist -PhilF -Philippe Dessante -Philippe Gouaillier -Pieter de Decker -Preben Randhol -psychedelys -Rafael Ferreira -Rafael Proença -Rafi Rubin -R.Bell -red26wings -Ricardo Miranda -Richard Voigt -Rigoberto Calleja -Robert Willert -Robert Young -Roel Groeneveld -Romain Janvier -Salvatore Iovene -Sam Freilich -Scott Wegner -Scott Worley -Sean Munkel -Sebastian Hanula -Sebastian Krause -Sebastian Semmler -Sérgio Marques -Sergio Villar Senin -Seth Remington -Shane Donohoe -Shane Huntley -Silvio Sisto -Simó Albert i Beltran -Simon Schubert -sneakypete -SPGoetze -S. Rust -Stefan Kögl -Stefan Lohmaier -Stephan Buys
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.