[intl] Tightens the string naming controls

In an early field test, lucasradaelli@ discovered that `strings_to_fidl`
let an identifier name such as "role_table," go through. Notice the
extra unwanted comma at the end.

While `strings_to_fidl` doesn't really have a preference, the FIDL file
that is generated based on strings.xml ends up with unallowed syntax.

So, we tighten the behavior to fail fast instead of generating a FIDL
file that won't pass a followup FIDL compilation step.

Example error given below:

```
╰─>$ ./strings_to_fidl --input=$HOME/strings.xml --output=$HOME/strings.xml.out ; cat $HOME/strings.xml.out
Error: while parsing dictionary

Caused by:
    0: in state: String { name: "string_name,", text: "text_string" }
    1: name is not acceptable: 'string_name,', does not match: ^[_a-zA-Z][_a-zA-Z_0-9]*$
```

Bug: 50720
Change-Id: Id178b3c4af434803ced1251a284c2a43947937c8
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/385229
Commit-Queue: Filip Filmar <fmil@google.com>
Reviewed-by: Konstantin Pozin <kpozin@google.com>
Testability-Review: Filip Filmar <fmil@google.com>
2 files changed
tree: 8b99a7ca57b702ff90d62926ffaa23be4bb904f4
  1. .clang-format
  2. .clang-tidy
  3. .dir-locals.el
  4. .gitattributes
  5. .gitignore
  6. .gn
  7. .style.yapf
  8. AUTHORS
  9. BUILD.gn
  10. CODE_OF_CONDUCT.md
  11. CONTRIBUTING.md
  12. LICENSE
  13. OWNERS
  14. PATENTS
  15. README.md
  16. boards/
  17. build/
  18. bundles/
  19. docs/
  20. examples/
  21. garnet/
  22. products/
  23. rustfmt.toml
  24. scripts/
  25. sdk/
  26. src/
  27. third_party/
  28. tools/
  29. zircon/
README.md

Fuchsia

Pink + Purple == Fuchsia (a new operating system)

What is Fuchsia?

Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.

Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.

How can I build and run Fuchsia?

See Getting Started.

Where can I learn more about Fuchsia?

See fuchsia.dev.