Metadata-Version: 2.1
Name: pyrealpro
Version: 0.1.2
Summary: Tools for building iRealPro songs.
Home-page: https://github.com/splendidtoad/pyrealpro
Author: Andy Chase
Author-email: andychase@gmail.com
License: UNKNOWN
Description: # PyRealPro
        
        The pyrealpro module provides classes that can be used to build a representation of a song, and render it in the import
        URL format used by the iRealPro app.  It assumes that you have a passing familiarity with the 
        [iRealPro import format](https://irealpro.com/ireal-pro-file-format/), but hopefully makes it easier to programmatically 
        construct an iRealPro song than resorting to brute-force string concatenation.
        
        ## Concepts
        
        The `Song` class is used to define a song that you wish to import into iRealPro. In addition to basic information like
        title, composer, key, and style, a song's `measures` property may contain a list of `Measure` objects.
        
        A `Measure` object's `chords` property will have one or more chord names, as well as additional properties that describe
        time signature (as a `TimeSignature` object), barlines, endings, rehearsal marks, and text to be displayed underneath.
        
        The `TimeSignature` class provides simple objects used by the `Measure` class to properly format the output ultimately
        used by the `Song` class to generate an iRealPro URL.
        
        ## Example
        
        ```
        from pyrealpro import Song, Measure, TimeSignature
        
        s = Song(title="Automation Blues", composer="pyrealpro", key='G', style='New Orleans Swing',
                         composer_name_first="Otto",
                         composer_name_last="Matonne")
        
        s.measures.append(Measure(chords='G7', barline_open='{', staff_text='Generated by pyrealpro'))
        s.measures.append(Measure(chords='G7'))
        s.measures.append(Measure(chords='G7'))
        s.measures.append(Measure(chords='G7', barline_close=']'))
        
        s.measures.append(Measure(chords='C7', barline_open='['))
        s.measures.append(Measure(chords='C7'))
        s.measures.append(Measure(chords='G7'))
        s.measures.append(Measure(chords='G7', barline_close=']'))
        
        s.measures.append(Measure(chords='D7', barline_open='['))
        s.measures.append(Measure(chords='C7'))
        
        s.measures.append(Measure(chords='G7', ending='N1'))
        s.measures.append(Measure(chords='D7', barline_close='}'))
        
        s.measures.append(Measure(chords='G7', ending='N2'))
        s.measures.append(Measure(chords='G7', barline_close='Z'))
        
        print(s.url())
        
        ```
        
        The above program will output the following URL, which can be imported into iRealPro:
        
        [irealbook://Automation%20Blues=Matonne%20Otto=New%20Orleans%20Swing=G=n=%7BT44%3CGenerated%20by%20pyrealpro%3EG7%20%20%20%7CG7%20%20%20%7CG7%20%20%20%7CG7%20%20%20%5D%5BC7%20%20%20%7CC7%20%20%20%7CG7%20%20%20%7CG7%20%20%20%5D%5BD7%20%20%20%7CC7%20%20%20%7CN1G7%20%20%20%7CD7%20%20%20%7DN2G7%20%20%20%7CG7%20%20%20Z](irealbook://Automation%20Blues=Matonne%20Otto=New%20Orleans%20Swing=G=n=%7BT44%3CGenerated%20by%20pyrealpro%3EG7%20%20%20%7CG7%20%20%20%7CG7%20%20%20%7CG7%20%20%20%5D%5BC7%20%20%20%7CC7%20%20%20%7CG7%20%20%20%7CG7%20%20%20%5D%5BD7%20%20%20%7CC7%20%20%20%7CN1G7%20%20%20%7CD7%20%20%20%7DN2G7%20%20%20%7CG7%20%20%20Z)
        
        ## iReal Pro File Format Reference
        
        <https://irealpro.com/ireal-pro-file-format/>
        
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 4 - Beta
Classifier: Topic :: Multimedia :: Sound/Audio
Classifier: Topic :: Software Development :: Libraries
Requires-Python: >=3.6
Description-Content-Type: text/markdown
