nishtahir / language-kotlin

Textmate language grammar for the Kotlin programming language
Apache License 2.0
12 stars 6 forks source link
grammar hacktoberfest kotlin syntax-highlighting textmate tmlanguage

Language Kotlin

A textmate compatible grammar for the Kotlin language.

Node.js CI codecov

Setup

This project is built using a couple of handy node scripts. Begin by installing the required dependencies.

$ npm install

Build

Changes to the grammar should be made in the src folder. These are merged at build time and used to produce the final artifact.

Once you are satisfied with your changes, you will need to generate xml and json variants for distribution. There's a handy build script available to automate this process.

$ npm run build

This will outputs the merged sources to the dist directory. At this point it's highly recommended that you test your changes using GitHub Lightshow. There's some manual work involved in doing this however this is the closest representation of what it would look like when it is deployed that is available at this time.

You can format your sources using the code formatting script.

$ npm run format

Testing

All changes to the grammar must be accompanied by tests covering relevant scopes.

Tests are run using vscode-tmgrammar-test. Test cases and regression tests are available in the /test folder.

Generated snapshots are available in the /snapshots folder and should be updated with changes to the grammar.

The test suite can be run using npm

$ npm test

Useful resources

Code of Conduct

Please note we have a code of conduct which must be observed in interactions with the project.