From Braniecki's Wiki
Jump to navigation Jump to search

Work on library is divided into stages:


The goal of stage one was to create a skeleton of the library, create fully serializable L10nObject and provide an initial 3-way diff.


  • Create L10nObject, L10nPackage classes
  • Create simple localization scripts
  • Create simple diff classes
  • Create complex diff classes
  • Create simple GUI app
  • Create simple webapp


In stage2 the whole library has been revised to clean and optimize the code. Additionally, the code structure has been stabilized and many IOClients/FormatParsers has been added.


  • Rewrite Entity class to look clean
  • ReadersWriters should be able to register themselves to L10nReaderWriter
  • Clean the entirely codebase and simplfy a lot of code pieces
  • Make the code readable
  • Implement in the nice way all the dirty hacks applied "in hurry"
  • Add support for gettext
  • Add support for SQL
  • Support Python 3.0
  • Load L10nPackage without loading L10nObjects
  • Support not processed files/not loaded files in l10nPackage (class Object)
  • Build a hybrid locales

silme 0.5

Stage 3 (Silme 0.5) is the current one. I'm writing a set of applications on top of the library to test how well the library solves the problems while writing apps.

  • Multilocale objects (for XLIFF, tc, po)
  • Add support for L20n
  • Work on performance, memory management
  • Freeze the interface and involve others to work on tools and library itself.
  • Remove silme.fp
  • Clean silme.format,
  • Make use of silme.(io|format).Manager
  • PEP08 and PEP257
  • unit tests for silme
  • egg packages for silme

silme 0.7 (plan)

  • Entity processing (for l20n, DTD)
  • Add support for html
  • Add fast track for modifing/removing/adding single entity to all files without loading l10nObject
  • Accesskey solution
  • Context soltion
  • Glossary solution
  • Dictionary solution
  • Similar uses solution
  • Statistics solution (silme.stats)
  • Plurals/Declension solution
  • Investigate Komodo IDE