Difference between revisions of "Silme"

From Braniecki's Wiki
Jump to navigation Jump to search
 
(17 intermediate revisions by the same user not shown)
Line 1: Line 1:
Mozpyl10n is a library for L10n operations on Mozilla files written in Python (sic!).
+
Silme is an localization library written in python.
  
The project currently has no name, and no stable anything, but it has a vision and some code already written.
+
* HG: [http://hg.mozilla.org/users/zbraniecki_mozilla.com/silme http://hg.mozilla.org/users/zbraniecki_mozilla.com/silme]
  
You can download it from [http://svn.braniecki.net/mozpyl10n].
+
== Tutorial ==
  
== Usage ==
+
* [[Silme:Tutorial:Concepts| Concepts]]
 +
* [[Silme:Tutorial:Setting up environment| Setting up environment]]
 +
* [[Silme:Tutorial:Entity| Entity and EntityList]]
 +
* [[Silme:Tutorial:L10nObject| L10nObject and L10nPackage]]
 +
* [[Silme:Tutorial:IOClient| File, SVN, SQL]]
 +
* [[Silme:Tutorial:FormatParser| DTD, Properties, gettext, HTML, XLIFF]]
 +
* [[Silme:Tutorial:Diff| Diffing between objects, packages]]
 +
* [[Silme:Tutorial:Logging| Logging]]
 +
* [[Silme:Tutorial:Command line| Command line example]]
 +
* [[Silme:Tutorial:Webtool| Webtool example]]
 +
* [[Silme:Tutorial:GUI| GUI example]]
 +
* [[Silme:Tutorial:Shortcuts]]
  
=== webtool ===
+
== Others ==
  
* install [http://www.djangoproject.com/ django]
+
* [[Silme:roadmap]]
* pull mozpyl10n
+
* [[Silme:apps]] - experimental applications on top of the library
* enter ./www
 
* prepare settings.py
 
* python manage.py syncdb
 
* python manage.py runserver
 
 
 
=== GUI tool ===
 
 
 
* install QT4
 
* install PyQT4
 
* pull mozpyl10n
 
* enter ./gui/qt4
 
* python l10nObject.py
 
 
 
=== Command line tools ===
 
 
 
* make sure you have python 2.5 and python-xml package
 
* pull mozpyl10n
 
* ./scripts/apply-diff.py en-US1.0 en-US1.5 pl1.0 pl1.5
 
* The script will diff en-US1.0 and en-US1.5 and apply the diff onto pl1.0 in pl1.5 directory
 
 
 
 
 
Known issues:
 
* Currently the feature set is extremely limited because I hardcoded many things to make sure that others do their job.
 
* It will not copy non dtd/properties files so you may want to limit the directory choice to the ones with dtd/properties files only.
 
* It will not overwrite the files in the pl1.5 directory
 
* It does not localize interactively but you can add it with not much work :)
 
 
 
* ./scripts/compare-versions.py en-US1.0 en-US1.5 --export xml > diff.xml
 
 
 
== Roadmap ==
 
 
 
For stage2:
 
 
 
* 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"
 
* Rewrite other ./scripts to make sure the scripts that currently exist works
 
* Think what's next.
 
* Add support for L20n
 

Latest revision as of 17:32, 18 February 2009