Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/harrydowning/serl
Serl - A tool for creating and using languages through language configurations
https://github.com/harrydowning/serl
domain-specific-languages markup-languages python yaml
Last synced: 3 months ago
JSON representation
Serl - A tool for creating and using languages through language configurations
- Host: GitHub
- URL: https://github.com/harrydowning/serl
- Owner: harrydowning
- License: mit
- Created: 2022-11-02T14:03:39.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2024-01-27T17:21:39.000Z (about 1 year ago)
- Last Synced: 2024-11-15T21:47:18.515Z (3 months ago)
- Topics: domain-specific-languages, markup-languages, python, yaml
- Language: Python
- Homepage:
- Size: 320 KB
- Stars: 3
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Serl - A tool for creating and using languages
![]()
![]()
Serl (serialized languages) is a format and corresponding command line tool for creating and using textual domain specific or markup languages with arbitrary syntax. This is achieved through the concept of language configurations, which are YAML files for specifying language syntax and functionality, used by the tool to execute language programs. These configurations can then be linked, allowing languages to be used like any other command line tool.
Documentation can be found on [Read The Docs](https://serl.readthedocs.io/en/latest/index.html).
### Development Workflow
| Command | Description |
| ------- | ----------- |
| `pip install .` | Build/install locally |
| `serl help` | Show the tool command line help screen |
| `pytest tests` or `test.bat` | Run automated test suite |
| `py -m build` | Build distribution |
| `py -m twine upload dist/*` | Upload distribution |
| `sphinx-build -b html docs/source/ docs/build/html` | Build documentation |