Commit Graph

357 Commits

Author SHA1 Message Date
Tab Atkins-Bittner 652590fad3 Allow single-line comments with nothing after them. Fixes #318 2023-10-06 13:56:03 -07:00
Jonathan 6fa99c2586
Add link to Go implementation (#334) 2023-09-26 12:18:51 -07:00
Evgeny 11d8e912fc
add Sublime Text support (#326) 2023-07-26 14:34:57 -07:00
Danielle Smith 09801faa93
add playground link to README.md (#332) 2023-06-30 15:06:31 -07:00
Tab Atkins Jr f3e5ff6027
Rearrange the number production to put decimal at the end
While the grammar makes no statements about match order, parsers pretty universally test for decimal last, after the other number productions, because `0b010` (/etc) can look like a `0` followed by garbage. Matching this order can reduce confusion.

Closes #330.
2023-05-30 14:13:46 -07:00
Evgeny a75ca13c15
Fix a typo in SPEC.md (#323) 2023-05-25 12:09:47 -07:00
chee a3d39e7749
Add link to common lisp implementation (#319) 2023-03-15 09:29:32 -07:00
Exidex 6feeccc491
Add Intellij IDEA plugin to README.md (#312) 2022-10-17 15:33:00 -07:00
Patitotective 6bf9b1c588
Update README.md (#311) 2022-10-13 09:13:03 -07:00
Lars Willighagen 0dc4a92a69
Replace use of non-defined 'tag' term (#310)
Fixes: https://github.com/kdl-org/kdl/issues/306

In the specifications of KQL and JiK, replace the
usage of 'tag' with 'type annotation', as that is
the term in the main KDL specification.
2022-10-10 13:25:25 -07:00
Lars Willighagen 06d1d67359
Add draft grammar for KQL 1.0.0 (#303)
* Add draft grammar for KQL 1.0.0

* Change whitespace in KQL grammar

* Update KQL grammar to use new operators
2022-10-09 12:04:10 -07:00
Bannerets 8d252133b7
Mention an OCaml implementation in the README (#307) 2022-10-03 09:14:53 -07:00
Aram Drevekenin 5253595c14
docs(readme): link to vim syntax plugin (#305) 2022-09-29 09:52:25 -07:00
Hannah Kolbeck 6bab316b0f
Remove credit from test suite README (#304) 2022-09-29 09:50:14 -07:00
Benjamin Kane 20d65edb7d
Add links to XML2KDL repo/online editor (#301)
Low effort KDLing should be easy :D
2022-09-23 09:08:39 -07:00
Nathan West 0b99021180
Improvements to string naming consistency (#299)
This PR modifies string descriptions in SPEC.md to use more consistent language throughout, with the primary intention of removing long descriptions like "a property key is either an identifier or a string". There are no semantic changes to KDL here.
2022-09-20 17:29:59 -07:00
Thomas Jollans c8dd45a0f1
Mention ckdl in the README (#296) 2022-09-17 15:18:49 -07:00
Tab Atkins Jr 76d5dd542a
Editorial rephrasing; define empty array/object
Did an editorial pass over the document, rewriting most of the prose slightly.

Caught a place or two that was still referring to tags for object keys.

Sole non-editorial change was adding the final ambiguous case - a completely empty node. These are required to have an `(array)` or `(object)` tag to be valid.
2022-09-02 15:02:05 -07:00
Bram Gotink fb80016011
Make JSON-in-KDL more minimalistic (#293) 2022-09-02 13:54:08 -07:00
Bram Gotink d437cf228b
Add test for empty single-line comment (#292) 2022-09-02 07:37:10 -07:00
Hannah Kolbeck 0a4a14d87a
Add escaped whitespace note to v2 changelog (#291)
* Add escaped whitespace note to v2 changelog

* Make changelog note on escaping whitespace more detailed
2022-09-01 13:05:53 -07:00
Nathan West 825ff2c17d
Add escaped whitespace to KDL strings (#290)
* Add escaped whitespace to KDL spec

* Add test cases for escaped whitespace

* Spelling error
2022-08-31 21:49:01 -07:00
Bram Gotink 337bd1bccf
Update expected output of test with changed input (#289) 2022-08-30 10:44:44 -07:00
Bram Gotink ffeea8e5aa
Use forward slash in solidus-escape test (#288) 2022-08-30 08:11:51 -07:00
Kat Marchán f38edc765d
add failing test for removed solidus escape 2022-08-28 13:28:47 -07:00
Kat Marchán 78a2d5f5ed
Draft changelog 2022-08-28 13:14:37 -07:00
Basile Henry 1bf4d740fa
Allow "empty" single line comments in the spec (#234)
As I read the grammar in the spec, `"//"` wouldn't parse as a single-line-comment as it requires as least one non-newline character after the slashes.
2022-08-28 13:07:17 -07:00
Kat Marchán 2d5e543bbe
KQL: remove map operator and accessors (#222)
Honestly, they're just too implementation-specific
2022-08-28 13:01:53 -07:00
Kat Marchán 69ac280bf0
KQL: require operator and change operator grammar a bit (#221) 2022-08-28 13:01:07 -07:00
Danielle Smith 910f6e90a7
Do not escape / (Solidus, Forwardslash) (#197) 2022-08-28 12:59:26 -07:00
Fabian Cook d9459f67c0
Correct @virtualstate/kdl description (#279) 2022-07-29 19:43:42 -07:00
Fabian Cook 4f739516e6
Add @virtualstate/kdl to implementations (#278) 2022-07-29 09:10:01 -07:00
oledfish e8fe0c38a8
Add .NET library to the implementation list (#277)
As per #51
2022-07-23 17:01:18 -07:00
oledfish 9daa2019f7
Fix RFC typo (#276)
The ``email`` field in Reserved Type Annotations for Strings refers to [RFC 5302](https://datatracker.ietf.org/doc/html/rfc5302), it should be [RFC 5322](https://datatracker.ietf.org/doc/html/rfc5322) instead.
2022-07-22 10:34:21 -07:00
Kat Marchán 81fda2455f
docs: add kaydle to impl list 2022-07-20 09:32:31 -07:00
Bram Gotink b027d3a751
Remove children from node terminals (#275)
The grammar doesn't specify that children count
as node terminator, but the text does.

The following document would be valid per text,
but invalid per spec.

```kdl
node { child {} }
```

Fixes #274
2022-07-11 15:13:05 -07:00
Jelle Besseling fcd489afa6
Add more info about the hyphen character in identifiers (#271) 2022-04-25 10:04:28 -07:00
Sebastian Paarmann 81a58e64ee
Mention multi-line comments in spec prose (#263) 2022-03-29 13:00:29 -07:00
Melody Horn cc1da35435
allow contributor link in `kdl-schema.kdl` (#260) 2022-03-27 22:12:32 -07:00
Melody Horn 168fd6abdc
fix `kdl-schema.kdl` well-formedness (#259) 2022-03-27 11:58:39 -07:00
Tab Atkins Jr 3e915b5be3
Clarify the parsing of hostname and idl-hostname (#248)
Ref: #247
2022-02-19 02:06:54 -08:00
Christopher Durham 8976e2da68
Define `digit` in formal grammar (#236)
`digit` is used as a subtraction in bare-identifier, but never defined.
2022-02-19 02:06:17 -08:00
Tab Atkins Jr 5a566ea5e3
Fix #212 by clarifying left/right (#249) 2022-02-19 02:04:38 -08:00
Paul Colomiets 23bbe1ebec
Add `knuffel` to the list of implementations (#256) 2022-02-07 15:50:39 -08:00
Mahmoud Mazouz f82a106814
Add link to Haskell implementation. (#243) 2021-10-24 17:59:50 -07:00
Tab Atkins Jr a1d85e9fe1
[editorial] tweak node-props-and-args grammar (#240)
* replaces a `foo foo*` with a `foo+`
* switches the name of the production to singular, since it only represents one prop/arg at a time

No normative changes intended.
2021-10-17 08:46:34 -07:00
Matthew Gamble 617ab86e5e
Add link to additional python implementation (#239) 2021-10-17 08:03:59 -07:00
Tab Atkins Jr e5e131920f
Link to new python impl
previous one is (currently, at least) dead
2021-10-08 12:09:09 -07:00
Tab Atkins Jr 05d16e0597
Per #223 discussion, this *should* be a parse error. (#226)
Fixes: #223
2021-10-07 08:01:18 -07:00
Tab Atkins Jr 93cc6724f2
Verify that a slash-dashed prop doesn't shadow a previous prop of the same name (#227) 2021-10-06 15:01:49 -07:00