~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/plugins/po_merge/po_merge.py

  • Committer: Patch Queue Manager
  • Date: 2011-11-29 11:13:07 UTC
  • mfrom: (6321.1.1 trunk)
  • Revision ID: pqm@pqm.ubuntu.com-20111129111307-5aj61u7nfe43cla7
(vila) Smarter .po file merging with merge hook as a plugin: po_merge
 (lazy options). (Vincent Ladeuil)

Show diffs side-by-side

added added

removed removed

Lines of Context:
38
38
""")
39
39
 
40
40
 
 
41
command_option = config.Option(
 
42
        'po_merge.command',
 
43
        default='msgmerge -N "{other}" "{pot_file}" -C "{this}" -o "{result}"',
 
44
        help='''\
 
45
Command used to create a conflict-free .po file during merge.
 
46
 
 
47
The following parameters are provided by the hook:
 
48
``this`` is the ``.po`` file content before the merge in the current branch,
 
49
``other`` is the ``.po`` file content in the branch merged from,
 
50
``pot_file`` is the path to the ``.pot`` file corresponding to the ``.po``
 
51
file being merged.
 
52
``result`` is the path where ``msgmerge`` will output its result. The hook will
 
53
use the content of this file to produce the resulting ``.po`` file.
 
54
 
 
55
All paths are absolute.
 
56
''')
 
57
 
 
58
 
 
59
po_dirs_option = config.Option(
 
60
        'po_merge.po_dirs', default='po,debian/po',
 
61
        from_unicode=config.list_from_store,
 
62
        help='List of dirs containing .po files that the hook applies to.')
 
63
 
 
64
 
 
65
po_glob_option = config.Option(
 
66
        'po_merge.po_glob', default='*.po',
 
67
        help='Glob matching all ``.po`` files in one of ``po_merge.po_dirs``.')
 
68
 
 
69
pot_glob_option = config.Option(
 
70
        'po_merge.pot_glob', default='*.pot',
 
71
        help='Glob matching the ``.pot`` file in one of ``po_merge.po_dirs``.')
 
72
 
 
73
 
41
74
class PoMerger(merge.PerFileMerger):
42
75
    """Merge .po files."""
43
76