'Missing strings are removed, new strings are added and already
translated strings are not touched.'

def get_new_strings(self, old_strings, translation_strings):

    new_strings = {}
    for k in translation_strings:
        k = k.replace('\\n', '\n')
        new_strings[k] = old_strings.get(k, k)
    plurals = {k: v for (k, v) in old_strings.items() if k.endswith('_plural')}
    for (plural_key, value) in plurals.items():
        components = plural_key.split('_')
        singular_key = '_'.join(components[:(-1)])
        if (singular_key in new_strings):
            new_strings[plural_key] = value
    return new_strings
