PyXDG
PyXDG is a python library to access freedesktop.org standards. Currently supported are:
- Base Directory Specification Version 0.6
- Menu Specification Version 1.0
- Desktop Entry Specification Version 1.0
- Icon Theme Specification Version 0.8
- Recent File Spec 0.2
- Shared-MIME-Database Specification 0.13 Documentation on ReadTheDocs
Development
Development takes place in a git repository, with a Github mirror. Freedesktop.org hosts the bug tracker.
[[[[!img http://travis-ci.org/#!/takluyver/pyxdg]|http://travis-ci.org/#!/takluyver/pyxdg]]
Download
- pyxdg-0.25.tar.gz (pgp; December 2012)
* Add support for $XDG_RUNTIME_DIR, Debian bug #656338. * Allow desktop entry files that are not encoded in UTF-8, Debian bug #693855. * Mime: Add support for subclasses and aliases. - pyxdg-0.24.tar.gz (pgp; October 2012)
* Update allowed <span class="createlink"><a href="https://secure.freedesktop.org/write/www/ikiwiki.cgi?page=DesktopEntry&from=Software%2Fpyxdg&do=create" rel="nofollow">?</a>DesktopEntry</span> categories following changes to the specification. * Fix removal of empty submenu, freedesktop bug #54747. * Documentation is now available on RTD: <a href="http://pyxdg.readthedocs.org/">http://pyxdg.readthedocs.org/</a> * A few more tests, and some code cleanup. * Fix failure to parse some menu files when kde-config is missing, freedesktop bug #56426. - pyxdg-0.23.tar.gz (pgp; July 2012)
* Fix a test for non-UTF-8 locales. - pyxdg-0.22.tar.gz (pgp; July 2012)
* Better unicode handling in several modules. * Fix for sorting non-ASCII menu entries, <a href="https://bugs.freedesktop.org/show_bug.cgi?id=52492">freedesktop bug #52492</a>. * More tests. - pyxdg-0.21.tar.gz (pgp; July 2012)
* Tests can now be run conveniently using nosetests, and cover more of the code. * BaseDirectory: New `save_cache_path()` function, <a href="https://bugs.freedesktop.org/show_bug.cgi?id=26458">freedesktop bug #26458</a>. * Config: Default icon theme is 'hicolor', not 'highcolor', <a href="https://bugs.freedesktop.org/show_bug.cgi?id=29294">freedesktop bug #29294</a>. * Menu: Obsolete `Rule.compile()` method removed. * DesktopEntry: Corrected spelling of `checkCategories()` method, <a href="https://bugs.freedesktop.org/show_bug.cgi?id=24974">freedesktop bug #24974</a>. * DesktopEntry: Consider `Actions` and `Keywords` keys standard. * DesktopEntry: Accept non-ASCII Keywords. * DesktopEntry: Update list of environments valid for `OnlyShowIn`. * Mime: Fix `get_type_by_contents()` in Python 3. * RecentFiles: Minor bug fixes. - pyxdg-0.20.tar.gz (June 2012)
* Compatible with Python 3; requires Python 2.6 or later * Clean up accidental GPL license notice in Menu.py * Add test scripts for xdg.Mime, xdg.Locale and xdg.RecentFiles * Fixes for icon theme validation * Fix exception in xdg.Mime * Replace invalid string exceptions * Fall back to default base directories if $XDG* environment variables are set but empty. * Remove use of deprecated os.popen3 in Menu.py * Correct URLs in README - pyxdg-0.19.tar.gz
* `IniFile.py`: add support for trusted desktop files (thanks to karl mikaelsson) * `DesktopEntry.py`: Support spec version 1.0, Debian bug #563660 * `MimeType.py`: Fix parsing of in memory data, Debian bug #563718 * `DesktopEntry.py`: Fix constructor, Debian bug #551297, #562951, #562952 - pyxdg-0.18.tar.gz
* `DesktopEntry.py`: Add getMimeTypes() method, correctly returning strings * `DesktopEntry.py`: Deprecated getMimeType() returning list of regex (AdamB) * `Menu.py`: Add support for XDG_MENU_PREFIX (Piotr Lewandowski) * `Mime.py`: Add get_type_by_contents() (Tony Houghton) - pyxdg-0.17.tar.gz
- Bugfixes around
- pyxdg-0.16.tar.gz
- Bugfixes around
- pyxdg-0.15.tar.gz
Menu.py: Bugfixes, support forTryExecMenuEditor.py: Bugfixes, pretty output for applications.menuIconTheme.py: Performance improvements, Bugfixes
- pyxdg-0.14.tar.gz
Menu.py,MenuEditor.py: Bugfixes
- pyxdg-0.13.tar.gz
Menu.py,MenuEditor.py: Bugfixes...Config.py: Add root_mode
- pyxdg-0.12.tar.gz
MenuEditor.py: New in this release, use to edit MenusMenu.py,IniFile.py,DesktopEntry.py: Lot of bugfixing...BaseDirectory.py: Add xdg_cache_homeIconTheme.py,Config.py: More caching stuff, make cachetime configurable- thx to Travis Watkins <alleykat@gmail.com> and Matt Kynaston <mattkyn@gmail.com> for their help
- pyxdg-0.11.tar.gz
Config.py: Module to configure Basic Settings, currently available:- Locale,
IconTheme,IconSize,WindowManager
- Locale,
Locale.py: Internal Module to support LocalesMime.py: Implementation of the Mime SpecificationMenu.py: Now supportsLegacyDirsRecentFiles.py:Implementation of the Recent Files Specification- A lot of bugfixes, thx to Travis Watkins <alleykat@gmail.com>
- pyxdg-0.10.tar.gz
- various bugfixes
- validate against menu-spec-1.0.draft-1
- pyxdg-0.9.tar.gz
- various bugfixes
- various performance improvements
- validate against menu-spec-0.91
- thx to Matt Kynaston <mattkyn@gmail.com> for some suggestions
- pyxdg-0.8.tar.gz
xdg/IconTheme.py(getIconPath): The "hicolor" theme has to be used as the fallback.xdg/IniFile.py(?IniFile.getList): Fixed bug in splitting up strings.- Don't read .desktop-* files, only .desktop
- Add . to the literal
FileExtensionsso that the checks work. - thx to
- Martin Grimme (martin@pycage.de)
- Ross Burton (ross@burtonini.com)
- pyxdg-0.7.tar.gz
- add 'import codecs' to
IniFile, needed by write support - Fix parsing of lists with only one entry
- add 'import codecs' to
- pyxdg-0.6.tar.gz
- Performance Improvements
- pyxdg-0.5.tar.gz
- License change to LGPL
- Support for write operations in
IniFile - Support for menu-spec-0.7
- Validates
OnlyShowInand Categories - Performance improvements (e.g. 5 times faster in menu parsing)
- A lot of bugfixes (e.g.
IconThemeparsing) - Python 2.3 support
- pyxdg-0.4.tar.gz
- Bugfix release
- pyxdg-0.3.tar.gz
- Basedir Spec updated to version 0.6
- First part of separating Desktop Entry backend in
IniFile - added getPath(...) function to
Menu.py - Complete Icon Theme Spec implementation, including cache and validation
- pyxdg-0.2.tar.gz
- Rewrite of Menu Spec code
- Use Basedir Spec code from ROX
- pyxdg-0.1.tar.gz
- Initial release.
