Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Mar 5, 2015
  1. locale: fix translation of Glade dialogs

    Merge branch 'kurisuke/fix-untranslated-glade-dialogs'
  2. @kurisuke

    Uniform handling of locale initialization.

    kurisuke authored
    Provide uniform translation for both GObject / Glade strings
    (initialized by module locale) and Python gettext strings to
    prevent a mix of languages in UI strings.
    If a locale is provided with sonata but not generated for the C
    library, Python strings will be translated, but strings in Glade
    dialogs will not be translated. So if the initial locale.setlocale
    call fails, don't point Python gettext to the .mo files -- this way
    all strings will be left untranslated.
Commits on Mar 3, 2015
  1. core: correctly handle tracks with very wrong track/disc values

    Merge branch 'kurisuke/fix-progress-bar2'
  2. test: add more tests on cleanup_numeric

    Actually handles the case where a disc or a track value is empty
Commits on Mar 1, 2015
  1. @kurisuke

    cleanup_numeric: check against whitespace only strings

    kurisuke authored
    Check for whitespace only strings before split()[0] to avoid
    IndexError. Also add test cases for these values. This fixes update of
    the playback progress bar for songs with empty track / disc values.
  2. @kurisuke
  3. @kurisuke

    Only call locale.bindtextdomain() if provided.

    kurisuke authored
    locale.bindtextdomain() is an interface to the eponymous libc
    function, which is GNU gettext specific and may not be provided on
    some systems (e.g. OSX). See:
  4. @kurisuke

    Enable gettext translation for glade dialogs.

    kurisuke authored
    Glade dialogs created by Gtk.Builder use the C library gettext
    interface. To enable localization for this interface, use setlocale /
    bindtextdomain from the python locale module.
Commits on Oct 23, 2014
  1. website: the website and mailing list are now on

    Berlios completely shutdown its services in March 2014 without much notice.
    The mailing lists hosted there are lost, as well as the website.
    The new website is now at
    The new mailing list is at
Commits on Oct 22, 2014
  1. audioscrobbler: add license

    This has been added upstream in commit fda059a634398b6659792aa6e4b36d9f0f4ff9a8
    and I got the authorization by the author to add it back here.
    See offmessage/pyscrobbler@fda059a
Commits on Oct 17, 2014
  1. doc: Sonata doesn't depend directly on taglib

    tagpy depends on taglib, not Sonata itself.
Commits on Sep 3, 2014
  1. i18n: use gettext.bindtextdomain() instead of locale's one

    It doesn't work on OSX (per #67) and even so, the documentation says it
    should not be used unless in specific cases, which we are not
    considering in Sonata.
    For more information, see
  2. doc: updated Changelog

  3. Remove albumlist module and inline AlbumList code into a function

    At the moment, there's no need for all of this, so I prefer to keep things
  4. Simplify the "shuffle by albums" code

    * use a defaultdict instead of manually checking for existing values
    * use automatically processed "track" attribute, instead of manually
      converting a track value into an integer
    * removed unused "sortalbumbytrack" parameter
    * removed not so usefull temporary variables and function calls
Commits on Aug 21, 2014
  1. notification: don't notify twice at startup

    Sonata automatically the song changed since "last time" (None) and do what's
    needed, without having to force things.
Commits on Mar 28, 2014
  1. @ppnsd

    Fix : SyntaxError for 'return'

    ppnsd authored
     File "/usr/lib64/python3.2/site-packages/sonata/", line 89
        yield os.path.join(song_dir, artworks[0])
    SyntaxError: 'return' with argument inside generator
Commits on Mar 19, 2014
  1. @f0rki

    Removed unused code and added improved shuffling of albums by using s…

    f0rki authored
    …ong ids to move the songs, instead of ranges.
  2. @f0rki
Commits on Mar 16, 2014
  1. website: add mising whitespace

  2. makefile: update help

  3. download: update Fedora's link

Commits on Feb 19, 2014
Something went wrong with that request. Please try again.