25 lines
2 KiB
Markdown
25 lines
2 KiB
Markdown
|
|
Contribution
|
|
------------
|
|
|
|
EnlighterJS is OpenSource and managed on [GitHub](https://github.com/AndiDittrich/EnlighterJS) - if you like, you're welcome to contribute!
|
|
To simplify the release and quality control process, please follow these remarks:
|
|
|
|
### Notices ###
|
|
* Your commits/pull-request should only contain changes of the `Source/`, `Resources/TestcaseData` directories or the Examples located into the root directory - otherwise i have to merge the request manually
|
|
* **Do not change** the files located into the `Examples/` or `Build/` directory - they are automatically generated during the build-process using data from `Resources/TestcaseData`
|
|
* Related software packages like MooTools, Bootstrap, ANT-contrib are updated by the maintainer
|
|
* If you form a concept of larger project changes, please [discuss](https://github.com/AndiDittrich/EnlighterJS/issues) them with the contributors **before** implementing
|
|
|
|
### Documentation ###
|
|
* To change contents of the `README.md` file please edit the split files in `Docs/` - the readme file is automatically generated by merging these files during the build process
|
|
|
|
### Adding a new Language ###
|
|
* First of all: take a look on other languages which are already available to learn about functions and coding styles
|
|
* To start with a new language please use the `LanguageDevelopment.phtml` workspace. It will automatically load `Source/Language/Template.mylang.js` (the startup file for your language development).
|
|
* Rename your language file `Template.mylang.js` to the **camel-cased** real language name - e.g. `Vhdl.js`
|
|
* Add detailed comments to each language rule!
|
|
* Keep the code as small as possible: e.g. use regex instead of long keyword lists
|
|
* In case your language is a superset of another one, please **extend** the origin language - do not copy the origin file
|
|
* Add an language testcase/demo to the `Resouces/TestcaseData` directory
|
|
* Finally create a [Pull Request on GitHub](https://help.github.com/articles/creating-a-pull-request/) - your changes will be reviewed and commonly added to the project
|