diff --git a/README.MD b/README.MD new file mode 100644 index 0000000..9569e8b --- /dev/null +++ b/README.MD @@ -0,0 +1,10 @@ +# Project Fluent + +Это набор Java пакетов для использования [Fluent localization system](http://projectfluent.org/). + +fluent-java состоит из следующих пакетов: + +## fluent.syntax + +Пакет [syntax](fluent.syntax) включает в себя синтаксический анализатор (parser), сериализатор (serializer), +и инструменты обхода, такие как Visitor. Данный пакет понадобится при работе над инструментами для Fluent в Java. diff --git a/fluent.syntax/README.MD b/fluent.syntax/README.MD new file mode 100644 index 0000000..9d3b9f3 --- /dev/null +++ b/fluent.syntax/README.MD @@ -0,0 +1,31 @@ +# fluent.syntax + +Чтение, запись и прочие преобразования файлов [Fluent](https://projectfluent.org/). + +Этот пакет включает в себя синтаксический анализатор (parser), сериализатор (serializer), +и инструменты обхода, такие как Visitor. Данный пакет понадобится при работе над инструментами для Fluent в Java. + +```java +import ru.di9.fluent.syntax.ast.Message; +import ru.di9.fluent.syntax.ast.Resource; +import ru.di9.fluent.syntax.parser.FluentParser; +import ru.di9.fluent.syntax.serializer.FluentSerializer; + +public class App { + public static void main(String[] args) { + var parser = new FluentParser(); + Resource resource = parser.parse("a-key = String to localize"); + + System.out.println(((Message) resource.getBody().get(0)).getId().getName()); + // "a-key" + + var serializer = new FluentSerializer(); + + System.out.println(serializer.serialize(resource)); + // "a-key = String to localize" + + System.out.println(serializer.serialize(resource.getBody().get(0))); + // "a-key = String to localize" + } +} +```