Translation migration

From Gramps - Free Genealogy Software
Jump to: navigation, search

This is an experimental page by looking at a simple way for a proper migration on translation strings.

Current status on master

  • Translations based on old templates:
all translation files were merged with at least the template generated on 2015-06-01
  • Translation revisions:
ar.po:"PO-Revision-Date: 2014-06-29 15:50+0300\n"
bg.po:"PO-Revision-Date: 2010-03-23 22:00+0200\n"
br.po:"PO-Revision-Date: 2013-10-25 11:25+0100\n"
ca.po:"PO-Revision-Date: 2013-11-24 18:11+0100\n"
cs.po:"PO-Revision-Date: 2016-05-10 10:26+0100\n"
da.po:"PO-Revision-Date: 2013-05-16 14:50+0200\n"
de.po:"PO-Revision-Date: 2016-06-16 21:26+0100\n"
el.po:"PO-Revision-Date: 2013-05-15 12:30+0200\n"
en_GB.po:"PO-Revision-Date: 2012-05-10 21:26+0100\n"
eo.po:"PO-Revision-Date: 2014-11-08 13:21+0100\n"
es.po:"PO-Revision-Date: 2014-04-20 11:10+0100\n"
fi.po:"PO-Revision-Date: 2016-06-21 09:02+0300\n"
fr.po:"PO-Revision-Date: 2016-06-21 10:54+0100\n"
ga.po:"PO-Revision-Date: 2011-01-08 13:36+0000\n"
he.po:"PO-Revision-Date: 2014-03-24 20:15+0300\n"
hr.po:"PO-Revision-Date: 2014-11-23 16:59+0100\n"
hu.po:"PO-Revision-Date: 2016-06-05 17:24+0200\n"
is.po:"PO-Revision-Date: 2016-02-19 09:20+0000\n"
it.po:"PO-Revision-Date: 2014-09-28 02:52+0200\n"
ja.po:"PO-Revision-Date: 2011-08-13 23:35+0900\n"
lt.po:"PO-Revision-Date: 2014-02-06 01:50+0300\n"
mk.po:"PO-Revision-Date: 2008-11-29 14:24+0100\n"
nb.po:"PO-Revision-Date: 2015-01-08 21:23+0100\n"
nl.po:"PO-Revision-Date: 2015-06-30 09:09+0200\n"
nn.po:"PO-Revision-Date: 2014-12-22 21:26+0100\n"
pl.po:"PO-Revision-Date: 2014-06-04 01:28+0100\n"
pt_BR.po:"PO-Revision-Date: 2014-03-23 11:36-0300\n"
pt_PT.po:"PO-Revision-Date: 2013-03-03 10:02+0100\n"
ro.po:"PO-Revision-Date: 2003-03-03 09:54+0100\n"
ru.po:"PO-Revision-Date: 2016-06-23 10:44+0300\n"
sk.po:"PO-Revision-Date: 2014-05-23 15:34+0100\n"
sl.po:"PO-Revision-Date: 2015-05-26 21:55+0200\n"
sq.po:"PO-Revision-Date: 2008-11-13 21:00+0100\n"
sr.po:"PO-Revision-Date: 2014-10-21 23:12+0200\n"
sr_Latn.po:"PO-Revision-Date: 2008-09-08 20:44+0200\n"
sv.po:"PO-Revision-Date: 2015-09-03 16:11+0200\n"
tr.po:"PO-Revision-Date: 2014-10-26 21:58+0200\n"
uk.po:"PO-Revision-Date: 2016-01-24 15:49+0300\n"
vi.po:"PO-Revision-Date: 2012-02-29 23:03+0700\n"
zh_CN.po:"PO-Revision-Date: 2015-03-18 17:31-0600\n"
zh_HK.po:"PO-Revision-Date: 2015-03-18 17:31-0600\n"
zh_TW.po:"PO-Revision-Date: 2015-03-18 17:31-0600\n"

Current status on gramps42

  • Translation revisions:
ar.po:"PO-Revision-Date: 2014-06-29 15:50+0300\n"
bg.po:"PO-Revision-Date: 2010-03-23 22:00+0200\n"
br.po:"PO-Revision-Date: 2013-10-25 11:25+0100\n"
ca.po:"PO-Revision-Date: 2013-11-24 18:11+0100\n"
cs.po:"PO-Revision-Date: 2016-04-16 14:39+0100\n"
da.po:"PO-Revision-Date: 2013-05-16 14:50+0200\n"
de.po:"PO-Revision-Date: 2016-06-04 16:29+0100\n"
el.po:"PO-Revision-Date: 2015-10-01 19:02+0200\n"
en_GB.po:"PO-Revision-Date: 2012-05-10 21:26+0100\n"
eo.po:"PO-Revision-Date: 2014-11-08 13:21+0100\n"
es.po:"PO-Revision-Date: 2014-04-20 11:10+0100\n"
fi.po:"PO-Revision-Date: 2016-05-10 19:47+0200\n"
fr.po:"PO-Revision-Date: 2016-03-28 09:37+0100\n"
ga.po:"PO-Revision-Date: 2011-01-08 13:36+0000\n"
he.po:"PO-Revision-Date: 2014-03-24 20:15+0300\n"
hr.po:"PO-Revision-Date: 2015-07-13 23:42+0100\n"
hu.po:"PO-Revision-Date: 2016-03-10 18:24+0100\n"
is.po:"PO-Revision-Date: 2016-02-19 09:20+0000\n"
it.po:"PO-Revision-Date: 2016-01-11 01:40+0100\n"
ja.po:"PO-Revision-Date: 2011-08-13 23:35+0900\n"
lt.po:"PO-Revision-Date: 2014-02-06 01:50+0300\n"
mk.po:"PO-Revision-Date: 2008-11-29 14:24+0100\n"
nb.po:"PO-Revision-Date: 2015-01-08 21:23+0100\n"
nl.po:"PO-Revision-Date: 2016-01-03 08:48+0100\n"
nn.po:"PO-Revision-Date: 2014-12-22 21:26+0100\n"
pl.po:"PO-Revision-Date: 2014-06-04 01:28+0100\n"
pt_BR.po:"PO-Revision-Date: 2014-03-23 11:36-0300\n"
pt_PT.po:"PO-Revision-Date: 2013-03-03 10:02+0100\n"
ro.po:"PO-Revision-Date: 2003-03-03 09:54+0100\n"
ru.po:"PO-Revision-Date: 2016-06-22 09:54+0300\n"
sk.po:"PO-Revision-Date: 2014-05-23 15:34+0100\n"
sl.po:"PO-Revision-Date: 2016-02-27 23:28+0200\n"
sq.po:"PO-Revision-Date: 2008-11-13 21:00+0100\n"
sr.po:"PO-Revision-Date: 2014-10-21 23:12+0200\n"
sr_Latn.po:"PO-Revision-Date: 2008-09-08 20:44+0200\n"
sv.po:"PO-Revision-Date: 2016-01-22 11:16+0100\n"
tr.po:"PO-Revision-Date: 2014-10-26 21:58+0200\n"
uk.po:"PO-Revision-Date: 2016-01-24 15:15+0300\n"
vi.po:"PO-Revision-Date: 2012-02-29 23:03+0700\n"
zh_CN.po:"PO-Revision-Date: 2015-03-18 17:31-0600\n"
zh_HK.po:"PO-Revision-Date: 2015-03-18 17:31-0600\n"
zh_TW.po:"PO-Revision-Date: 2015-03-18 17:31-0600\n"

Next step?

  1. merge translations with the last template should not be too intrusive. We re-use strings with the last model.
  2. merge strings between two branches means to know what should be the main branch for this translation file.
  3. diff works fine once you "order by msgid" and ignore comments

eg, like:

msgfmt en_GB.po -o order.mo
msgunfmt order.mo -o en_GB_order.po

Having such {dict} will make actions on translation files more simplier.

Where?

 --- gramps42	2016-06-23 11:15:16.503133765 +0200
 +++ master  	2016-06-23 11:18:25.232069621 +0200
 @@ -2,40 +2,40 @@
 bg.po:"PO-Revision-Date: 2010-03-23 22:00+0200\n"
 br.po:"PO-Revision-Date: 2013-10-25 11:25+0100\n"
 ca.po:"PO-Revision-Date: 2013-11-24 18:11+0100\n"
- cs.po:"PO-Revision-Date: 2016-04-16 14:39+0100\n"
+ cs.po:"PO-Revision-Date: 2016-05-10 10:26+0100\n"
 da.po:"PO-Revision-Date: 2013-05-16 14:50+0200\n"
- de.po:"PO-Revision-Date: 2016-06-04 16:29+0100\n"
- el.po:"PO-Revision-Date: 2015-10-01 19:02+0200\n"
+ de.po:"PO-Revision-Date: 2016-06-16 21:26+0100\n"
+ el.po:"PO-Revision-Date: 2013-05-15 12:30+0200\n"
 en_GB.po:"PO-Revision-Date: 2012-05-10 21:26+0100\n"
 eo.po:"PO-Revision-Date: 2014-11-08 13:21+0100\n"
 es.po:"PO-Revision-Date: 2014-04-20 11:10+0100\n"
- fi.po:"PO-Revision-Date: 2016-05-10 19:47+0200\n"
- fr.po:"PO-Revision-Date: 2016-03-28 09:37+0100\n"
+ fi.po:"PO-Revision-Date: 2016-06-21 09:02+0300\n"
+ fr.po:"PO-Revision-Date: 2016-06-21 10:54+0100\n"
 ga.po:"PO-Revision-Date: 2011-01-08 13:36+0000\n"
 he.po:"PO-Revision-Date: 2014-03-24 20:15+0300\n"
- hr.po:"PO-Revision-Date: 2015-07-13 23:42+0100\n"
- hu.po:"PO-Revision-Date: 2016-03-10 18:24+0100\n"
+ hr.po:"PO-Revision-Date: 2014-11-23 16:59+0100\n"
+ hu.po:"PO-Revision-Date: 2016-06-05 17:24+0200\n"
 is.po:"PO-Revision-Date: 2016-02-19 09:20+0000\n"
- it.po:"PO-Revision-Date: 2016-01-11 01:40+0100\n"
+ it.po:"PO-Revision-Date: 2014-09-28 02:52+0200\n"
 ja.po:"PO-Revision-Date: 2011-08-13 23:35+0900\n"
 lt.po:"PO-Revision-Date: 2014-02-06 01:50+0300\n"
 mk.po:"PO-Revision-Date: 2008-11-29 14:24+0100\n"
 nb.po:"PO-Revision-Date: 2015-01-08 21:23+0100\n"
- nl.po:"PO-Revision-Date: 2016-01-03 08:48+0100\n"
+ nl.po:"PO-Revision-Date: 2015-06-30 09:09+0200\n"
 nn.po:"PO-Revision-Date: 2014-12-22 21:26+0100\n"
 pl.po:"PO-Revision-Date: 2014-06-04 01:28+0100\n"
 pt_BR.po:"PO-Revision-Date: 2014-03-23 11:36-0300\n"
 pt_PT.po:"PO-Revision-Date: 2013-03-03 10:02+0100\n"
 ro.po:"PO-Revision-Date: 2003-03-03 09:54+0100\n"
- ru.po:"PO-Revision-Date: 2016-06-22 09:54+0300\n"
+ ru.po:"PO-Revision-Date: 2016-06-23 10:44+0300\n"
 sk.po:"PO-Revision-Date: 2014-05-23 15:34+0100\n"
- sl.po:"PO-Revision-Date: 2016-02-27 23:28+0200\n"
+ sl.po:"PO-Revision-Date: 2015-05-26 21:55+0200\n"
 sq.po:"PO-Revision-Date: 2008-11-13 21:00+0100\n"
 sr.po:"PO-Revision-Date: 2014-10-21 23:12+0200\n"
 sr_Latn.po:"PO-Revision-Date: 2008-09-08 20:44+0200\n"
- sv.po:"PO-Revision-Date: 2016-01-22 11:16+0100\n"
+ sv.po:"PO-Revision-Date: 2015-09-03 16:11+0200\n"
 tr.po:"PO-Revision-Date: 2014-10-26 21:58+0200\n"
- uk.po:"PO-Revision-Date: 2016-01-24 15:15+0300\n"
+ uk.po:"PO-Revision-Date: 2016-01-24 15:49+0300\n"
 vi.po:"PO-Revision-Date: 2012-02-29 23:03+0700\n"
 zh_CN.po:"PO-Revision-Date: 2015-03-18 17:31-0600\n"
 zh_HK.po:"PO-Revision-Date: 2015-03-18 17:31-0600\n"

Gramps42

el, hr, it, nl, sl, sv