-
Notifications
You must be signed in to change notification settings - Fork 81
Closed
Description
Let's plan the implementation work in this issue. We'll submit PRs against a release branch, zeroeight
, which I'll create later today.
Some 0.8 features don't need any work in fluent.js
: projectfluent/fluent#179 and projectfluent/fluent#207 are already supported and projectfluent/fluent#211 made the reference parser behave like the tooling one.
For features that need implementation, I'd like to follow the same order in which they landed in the spec. This will make it much easier to keep the reference tests green with each change. Here's the full list:
Part 1 (#307)
- 1. Support astral Unicode characters in TextElements and StringLiterals
Support astral Unicode characters in TextElements and StringLiteral fluent#179, tests only - 2. Don't store the term sigil in the identifier name
Don't store the term sigil in the identifier name fluent#183, tooling parser - 3. Treat backslash as normal char in TextElements
Treat backslash as normal char in TextElements fluent#181, tooling parser, runtime parser - 4. Don't normalize CRLF to LF in Junk
Don't normalize CRLF to LF in Junk fluent#193, tests only - 5. Forbid the closing brace in text
Forbid the closing brace in text fluent#198, tooling parser, runtime parser
Part 2 (#309)
- 6. Dedent multiline text to preserve content indentation
Dedent multiline text to preserve content indentation fluent#197, tooling parser, runtime parser
Part 3 (#310)
- 7. Add FunctionReference
Add FunctionReference fluent#210, tooling parser - 8. Store unescaped content in StringLiteral.value and raw content in StringLiteral.raw
Store unescaped content in StringLiteral.value and raw content in StringLiteral.raw fluent#203, tooling parser
Part 4 (#311)
- 9. Add Parameterized Terms
Add Parameterized Terms fluent#205, tooling parser, runtime parser, resolver
Part 5 (#312)
- 10. Stop parsing Junk on lines which look like Entries
Stop parsing Junk on lines which look like Entries fluent#211, tests only - 11. Allow all Unicode characters
Allow all Unicode characters fluent#207, tests only
Part 6 (#313)
- 12. Add Parameterized Attributes
Add parameterized Attributes fluent#212, tooling parser, runtime parser, resolver
Part 7 (#314)
- 13. Recognize \UHHHHHH as an escape sequence
Recognize \UHHHHHH as an escape sequence fluent#201, tooling parser, runtime parser - 14. Change line endings in comments to line_end
Change line endings in comments to line_end fluent#219, tooling parser - 15. Forbid nested VariantLists
Forbid nested VariantLists fluent#220, tooling parser
Metadata
Metadata
Assignees
Labels
No labels