Metadata-Version: 2.1
Name: klarenz
Version: 190624
Summary: Programmatically generate Lilypond scores, with ease and elegance of pure Python
Home-page: https://github.com/teymuri/klarenz.git
Author: Amir Teymuri
Author-email: Amir Teymuri <amtework@gmail.com>
Project-URL: Homepage, https://klarenz.codeberg.page/
Project-URL: Bug Tracker, https://codeberg.org/klarenz/klarenz/issues
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: GNU Affero General Public License v3
Classifier: Operating System :: OS Independent
Requires-Python: >=3.5
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: pytest


[__Klarenz__](https://en.wikipedia.org/wiki/Clarence_Barlow) (current release: __v190624__) is a highly minimalist Python package (the entire API consists of a single class `Part` and a main processor function `proc`!) for compiling Lilypond sheet music.

For more information and examples please check the [Documentation](https://teymuri.github.io/klarenz-docs/).

# Some Coding Tips
Convert a collection of durations into a progressing beats collection by utilizing `itertools.accumulate`:

```python
from random import choice
from itertools import accumulate

durs = [choice([.25, .5, .75, 1]) for _ in range(4)]
beats = list(accumulate(durs, initial=0))
print("Durations", durs)
print("Beats", beats)

# Durations: [0.25, 0.5, 0.5, 0.75]
# Beats: [0, 0.25, 0.75, 1.25, 2.0]
```

# Contributing

If you wish to contribute your code to this repository, please consider the following points:
- Packaging
  - Ensure to update the `src/klarenz/version.py` file and run `python prebuild.py` (and push the changes!) before initiating the build-upload process for each release with:

    ```
    python -m build && twine upload dist/*
    ```

_This README is generated by `prebuild.py`. Never edit it directly by hand! Instead, modify the `readme` variable in the
pre-build file._
