xbmc/xbmc — pull request #989 by alanwww1 (2012-05-20 22:48:40+00:00)
Title: Advanced PO file format

Using the new PO files in real life, I realized that it is not so easy for developers to check each time they add a string to the language file if that particular string has showed up already with another numeric id, but in another context.

In these cases we should have written some unique context message.

To solve this problem I came up with an idea of instead of storing the numeric id in a separate line, we could store it in the "msgctxt" line in the entry. This case we have a place for these ids AND we automatically have a completely unique context message for each msgid strings.

It is a one line change in the parser code, but of course the language files change massively.

Of course, if I am causing any troubles with pre-written PRs, Please let me know and I will convert those strings for you.

Please if there are no strong objections, I'd like to pull this in ASAP so that we finalize the format and finally, I can get the official Transifex project up and running. There is a great deal of requests coming from translators :-)

Thank you, Cheers, Attila

So a typical entry would look like this:
```
msgctxt "#7"
msgid "File manager"
msgstr ""
```

A full blown entry would look like this
(note you do NOT have to specify the reference and comment, just if you want to)

```
#. play GUI sounds
#: xbmc/settings/GUISettings.cpp
msgctxt "#34123"
msgid "Never"
msgstr "Soha"
```