1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
|
# Any copyright is dedicated to the Public Domain.
# http://creativecommons.org/publicdomain/zero/1.0/
import re
from fluent.migratetb import COPY, COPY_PATTERN
from fluent.migratetb.helpers import VARIABLE_REFERENCE
from fluent.migratetb.transforms import Transform, TransformPattern
import fluent.syntax.ast as FTL
def migrate(ctx):
"""Bug 1731837 - Fix multiple problems with the labelling of Delete commands, part {index}."""
source = "mail/chrome/messenger/messenger.dtd"
dest = "mail/messenger/messenger.ftl"
ctx.add_transforms(
dest,
dest,
[
FTL.Message(
id=FTL.Identifier("menu-edit-delete-folder"),
attributes=[
FTL.Attribute(
id=FTL.Identifier("label"), value=COPY(source, "deleteFolderCmd.label")
),
FTL.Attribute(
id=FTL.Identifier("accesskey"),
value=COPY(source, "deleteFolderCmd.accesskey"),
),
],
),
FTL.Message(
id=FTL.Identifier("menu-edit-delete-messages"),
attributes=[
FTL.Attribute(
id=FTL.Identifier("label"),
value=Transform.pattern_of(
FTL.SelectExpression(
selector=VARIABLE_REFERENCE("count"),
variants=[
FTL.Variant(
key=FTL.Identifier("one"),
value=COPY(source, "deleteMsgCmd.label"),
),
FTL.Variant(
key=FTL.Identifier("other"),
default=True,
value=COPY(source, "deleteMsgsCmd.label"),
),
],
)
),
),
FTL.Attribute(
id=FTL.Identifier("accesskey"),
value=COPY(source, "deleteMsgCmd.accesskey"),
),
],
),
FTL.Message(
id=FTL.Identifier("menu-edit-undelete-messages"),
attributes=[
FTL.Attribute(
id=FTL.Identifier("label"),
value=Transform.pattern_of(
FTL.SelectExpression(
selector=VARIABLE_REFERENCE("count"),
variants=[
FTL.Variant(
key=FTL.Identifier("one"),
value=COPY(source, "undeleteMsgCmd.label"),
),
FTL.Variant(
key=FTL.Identifier("other"),
default=True,
value=COPY(source, "undeleteMsgsCmd.label"),
),
],
)
),
),
FTL.Attribute(
id=FTL.Identifier("accesskey"),
value=COPY(source, "undeleteMsgCmd.accesskey"),
),
],
),
FTL.Message(
id=FTL.Identifier("mail-context-undelete-messages"),
attributes=[
FTL.Attribute(
id=FTL.Identifier("label"),
value=Transform.pattern_of(
FTL.SelectExpression(
selector=VARIABLE_REFERENCE("count"),
variants=[
FTL.Variant(
key=FTL.Identifier("one"),
value=COPY(source, "undeleteMsgCmd.label"),
),
FTL.Variant(
key=FTL.Identifier("other"),
default=True,
value=COPY(source, "undeleteMsgsCmd.label"),
),
],
)
),
)
],
),
],
)
|