Skip to content

aspotashev/stupid-ids

Repository files navigation

Assumptions:
1. The dump of template-part (generated by "dump-template") of .po file is a
unique identifier of a translation template. It means that two identical templates
(by content, i.e. their filenames may be different) must have the same translations.

	The pair {path to .pot; POT-Creation-Date} can not be used
	as unique identifier of a translation template because of manual
	fixes like http://websvn.kde.org/?view=revision&revision=724388
	("Fix qt-format into kde-format until next POT extraction.")

2. The strings in 2 identical POTs (but with possibly different basenames) are always translated the same way.

3. PO editors (Lokalize, gtranslator, ...) do not change the order of messages in the translation file.


How to setup stupid-ids:
1. Create and regularly update a Git repository with translation
	templates (.pot file). In the following commands we will
	assume the path the that Git repository to be "/path/to/git-templates".

2.	cd stupid-id-filler
	./sif-init.sh ids
	./add-templates-from-repo.rb /path/to/git-templates ./ids

3.	cd stupid-id-filler/database
	./update-database.rb		# This will generate the database "filler-db.sqlite3"

4.	cd transition-detector
	./update-database.rb		# This will generate the ID minimization database "idmap.mmapdb"


Components:
== dump-ids ==
Writes a list of pairs of IDs in two .pot templates.

== stupid-id-filler ==
Chooses IDs for .pot templates. Maintains the map [tp_hash] -> [first ID in .pot].

== stupid-id-filler/database ==

== transition-detector ==


Dependencies:
* >=libgettextpo-0.18 (for "po_message_is_range")
* libgit2-0.22.0 (for git_libgit2_init())
* GLib-2.36 (for "g_type_init()" to be not required)
* dbus-glib (for interaction with Lokalize)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published