This grammar implements the INI format.
Example INI file:
[section 1]
some_key = some_value
another-key = another value
[another section]
# Keys may contain whitespace.
key 1 = value 1
# Value may be empty.
key_2 =
See test/corpus/ for more examples.
- Section name must appear on a line by itself.
- Equals sign (=) and semicolon (;) are reserved characters and cannot appear in the key. Any whitespace surrounding the key is stripped.
- Comments (
;
or#
) must start at column 1. Trailing comments are not supported yet. #13 - Duplicate names are not checked.
- Line continuations (
\
) are not supported. setting_value
includes whitespace. #3. Should values exclude surrounding whitespace?- Quoted keys/values are not supported yet.
- Escape sequences are not supported.
Steps to perform a release:
- Bump and tag the version (choose
patch
/minor
/major
as appropriate).npm version patch -m "release %s"
- Bump to prerelease, without creating a tag .
npm version --no-git-tag-version prerelease --preid dev && git add package*.json && git commit -m bump
- Push.
git push --follow-tags
- Release the tagged commit: https://github.com/justinmk/tree-sitter-ini/releases/new