I can think of two important use-cases for this, but I'm afraid I'm missing some important about the design principles behind fluent, but first, let's see the example from the documentation:
-brand-name = Aurora
.gender = feminine
update-successful =
{ -brand-name.gender ->
[masculine] { -brand-name} został zaktualizowany.
[feminine] { -brand-name } została zaktualizowana.
*[other] Program { -brand-name } został zaktualizowany.
}
In this example, -brand-name.gender is used as a selector, and it works just fine. This feature allows developers to keep the information about the brand name in a single place, and reuse it the value in various places.
Lets now see another example:
-brand-name = Aurora
.gender = feminine
-foo = { $gender ->
[feminine] some
*[masculine] another
}
x = { -foo(gender: "feminine") }
y = { -foo(gender: -brand-name.gender) }
In this case, y message throws during parsing with E0014: Expected literal, which I suspect is related to https://github.com/projectfluent/fluent/issues/337. This prevents reusing the attribute of a term as the value of a variable.
I can think of two important use-cases for this, but I'm afraid I'm missing some important about the design principles behind fluent, but first, let's see the example from the documentation:
In this example,
-brand-name.gender
is used as a selector, and it works just fine. This feature allows developers to keep the information about the brand name in a single place, and reuse it the value in various places.Lets now see another example:
In this case,
y
message throws during parsing withE0014: Expected literal
, which I suspect is related to https://github.com/projectfluent/fluent/issues/337. This prevents reusing the attribute of a term as the value of a variable.cc @gonzalocordero