Commit Graph

165 Commits

Author SHA1 Message Date
Tab Atkins Jr. cedd6475f1
Merge branch 'main' into allow-empty-multiline 2025-01-17 16:27:25 -08:00
Bram Gotink 20375a187e
align prose text on initial identifier characters with grammar (#464) 2025-01-17 09:54:19 -08:00
Dani Smith 91cd421988
update SPEC to keep lines lengths short (#470) 2025-01-17 09:52:28 -08:00
Dani Smith 34e4259dfc
Remove Identifier String termination phrase (#485)
Fixes: https://github.com/kdl-org/kdl/issues/480
2025-01-17 09:18:43 -08:00
Tab Atkins Jr. 4fc0837b56
Support empty multiline strings
Per <https://github.com/kdl-org/kdl/discussions/481>, the grammar doesn't actually allow the first and last newline in a multiline string to be the same (indicating an empty string). This looks like the minimal fix for it.
2025-01-16 14:45:36 -08:00
Dani Smith 39a098237d
identifier strings can technically be terminated by EOF (#469) 2025-01-09 08:56:33 -08:00
Evgeny 76dc3e3002
doc: resolve inconsistency in banned chars in escaped form (#450)
Also add it explicitly to the spec grammar to make it clear that escaped forms are also affected
2024-12-23 23:57:10 -08:00
Evgeny 0f77ec4f9f
doc: change Unicode link to a friendly html version (#448)
(version bumped, but the table is the same)

Spec v1 is missing vertical tab, but that's frozen, so only formatting change
2024-12-22 00:55:53 -08:00
Kat Marchán 6ceecd85d6
Release KDL 2.0.0 (#434)
* Release KDL 2.0.0

* fix grammar for multiline quoted strings to allow escaped whitespace on closing line

* Add unicode-space to raw string

* Remove nonexistent equals-sign from the grammar (#435)

* fix multiline string tests

* grammar: fix disallowed-keyword-identifiers and string-character (#436)

* Back out "fix multiline string tests"

This backs out commit 0c5604b462.

* add extra javascript implementation (#437)

* reword interaction multiline + whitespace escape (#439)

* More tests for backslash behaviour (#438)

* More tests for baskslash behaviour

* Incorrect example of escaped final newline

* Test with non-literal indent

* Make line-space a superset of node-space (#440)

* Allow escline everywhere

* escline tests

* Always escape \ inside single quotes in the grammar text (#441)

to match the other uses of it and the metalanguage description below

* Add tests for mandatory whitespace between arguments or properties (#442)

* Add an optional version marker (#444)

* Add version marker to the grammer

* Add version marker to the Changelog

* Update SPEC.md

Co-authored-by: eilvelia <hi@eilvelia.cat>

* add a mandatory newline after the version marker

* add mandatory space between version number

---------

Co-authored-by: eilvelia <hi@eilvelia.cat>

* Fix a changelog line erroneously truncated in #444 (#445)

* fix: move vertical tab to the line-breaking whitespace to match Unicode (#446)

* add vertical tab change test

* final tweaks before release

---------

Co-authored-by: eilvelia <hi@eilvelia.cat>
Co-authored-by: Bram Gotink <bram@gotink.me>
Co-authored-by: Thomas Jollans <tjol@tjol.eu>
Co-authored-by: Evgeny <eugenesvk@users.noreply.github.com>
2024-12-21 18:33:50 -08:00
Kat Marchán 0e58f61b18
Release 2.0.0-draft.8 2024-12-14 17:23:09 -08:00
Thomas Jollans 7aa01a21b7
Clarify spec for whitespace-only lines in multiline strings (#433) 2024-12-12 14:47:39 -08:00
Tab Atkins Jr. d1ceb44f40
Make the raw-string productions non-greedy, and describe the infallibility (#430)
* Make the raw-string productions non-greedy, and describe the infallibility. Closes #415

* More explicitly use and reference a cut point, rather than infallibility.
2024-12-12 11:08:50 -08:00
Tab Atkins Jr. ca2bd45a66
typo
Accidental lingering `)` in single-line-raw-string-body, with no matching `(` to pair with.
2024-12-11 16:51:38 -08:00
Kat Marchán ace7ec7a96
Release 2.0.0-draft.7 2024-12-10 23:31:07 -08:00
Kat Marchán 171bc71f42
Allow node-space after slashdash and add a bunch more slashdash tests (#427)
Fixes: https://github.com/kdl-org/kdl/issues/426
2024-12-10 20:43:58 -08:00
Thomas Jollans 75a0869a6c
Clarify raw single-line string grammar (#425) 2024-12-10 16:45:35 -08:00
Kat Marchán 373e0ed973
Pull in v1 spec and add some compatibility notes (#424)
Fixes: https://github.com/kdl-org/kdl/issues/420
2024-12-09 01:27:07 -08:00
Thomas Jollans 831ecc1d52
Allow quotes in multi-line strings (#419)
Fixes: https://github.com/kdl-org/kdl/issues/415
2024-12-08 01:07:31 -08:00
Tab Atkins Jr. bf40df5581
Make multi-line a top-level string type; demote Raw String. (#417) 2024-12-06 15:06:07 -08:00
Kat Marchán 4334a6d552
Release 2.0.0 draft 6 2024-12-04 00:04:21 -08:00
Kat Marchán e7b5ec6bf9
unambiguous multiline strings (#414)
Fixes: https://github.com/kdl-org/kdl/issues/413
2024-12-03 23:44:40 -08:00
Kat Marchán e477f32f05
a few clarifications and wording tweaks to the spec 2024-12-03 23:06:58 -08:00
Kat Marchán 1f050633ad
slight grammar tweaks 2024-12-01 01:16:06 -08:00
Kat Marchán 76a1de517b
Release 2.0.0 draft 5 2024-11-28 23:09:31 -08:00
Kat Marchán 90e22bc789
[v2] more predictable slashdash (#407)
Fixes: https://github.com/kdl-org/kdl/issues/401
2024-11-28 22:53:42 -08:00
Kat Marchán 1588b1f5fd
get rid of syntactically significant unicode equals signs (#400)
Fixes: #399
2024-11-28 22:39:19 -08:00
Kat Marchán fa3050ccc0
add 128-bit ints 2024-11-28 00:06:15 -08:00
Kat Marchán 93c4400a96
clarify that numbers don't need to be IEEE 754 floats 2024-11-27 01:02:02 -08:00
Kat Marchán 1e924bcc7f
clarifications around multiline prefixes 2024-10-03 20:53:01 -07:00
Thomas Jollans bcfb3321c4
Tweak rules for escaped whitespace in multi-line strings (#392)
These rules are a bit more liberal than what was described previously,
but I think they're clearer and more consistent:

 * This way, strings have the (I think intuitive) property that, when
   you 'blindly' remove the whitespace escapes, the meaning is
   unchanged.
 * If you take any valid single-line string and add a newline character
   and some indentation both at the start and the end, the string will
   still be valid (and unchanged) - previously, this was not necessarily
   the case if there were whitespace escapes.
2024-06-13 11:55:44 -07:00
Kat Marchán fa204cec62
unicode was not defined in grammar 2024-04-02 21:36:25 -07:00
Kat Marchán c9134e3c16
change escape resolution order again 2024-04-02 00:58:25 -07:00
Kat Marchán bea0f67685
turn it around: escapes should be resolved _before_ dedenting 2024-04-01 16:53:33 -07:00
Kat Marchán fa9d30388c
remove duplication of keyword-number 2024-04-01 16:48:38 -07:00
Kat Marchán d064bc9026
clarify multi-line strings and escapes interaction 2024-04-01 14:37:52 -07:00
Kat Marchán 281de7e977
review fixes 2024-04-01 14:26:44 -07:00
Kat Marchán d0b30c3f35
Update SPEC.md
Co-authored-by: Bannerets <comonoid@protonmail.com>
2024-03-05 12:47:07 -08:00
Bram Gotink 9e7b958f0c
Ensure spec allows slashdash right after node separator (#382) 2024-02-18 13:18:50 -08:00
Kat Marchán 2710c90ff5
facepalm: forgot the full grammar change for float keywords 2024-02-13 00:15:03 -08:00
Kat Marchán e773747b0b
Release 2.0 draft 4 2024-02-12 23:20:55 -08:00
Kat Marchán fa816ca6df
add floats
Fixes: https://github.com/kdl-org/kdl/issues/374
2024-02-12 23:17:52 -08:00
Kat Marchán 631ec14059
allow /- at the very beginning of a document 2024-02-12 23:00:50 -08:00
wackbyte ec7880d4a5
Fix broken formatting in grammar language example (#375) 2024-02-12 10:53:38 -08:00
Kat Marchán abae1f9a39
more fixes 2024-02-08 16:16:42 -08:00
Kat Marchán 793a9d4ce7
normalize literal newlines in multiline strings
Fixes: https://github.com/kdl-org/kdl/issues/360
2024-02-08 11:24:40 -08:00
Kat Marchán f81fcfada5
minor reword 2024-02-08 09:47:42 -08:00
Kat Marchán b1163e1f91
more small fixes 2024-02-08 09:35:26 -08:00
Kat Marchán 40d8c83aca
unicode character support clarifications 2024-02-07 16:07:54 -08:00
Kat Marchán 2d4bcd0b51
Release 2.0.0 draft 3 2024-02-07 11:38:03 -08:00
Kat Marchán 35ac19b854
fix stray legacy bool in example 2024-02-07 11:36:59 -08:00