REAPER Project File Parser
Project description
Description
RPP is a format used to describe REAPER projects. This package is designed to be RPP parser/emitter and uses PLY as parser framework.
Examples
Import the package:
>>> import rpp
Decode RPP:
>>> r = rpp.loads("""\ <REAPER_PROJECT 0.1 "4.32" 1372525904 RIPPLE 0 GROUPOVERRIDE 0 0 0 AUTOXFADE 1 > """) >>> r Element(tag='REAPER_PROJECT', attrib=['0.1', '4.32', '1372525904'], children=[ ['RIPPLE', '0'], ['GROUPOVERRIDE', '0', '0', '0'], ['AUTOXFADE', '1'], ])
Transform elements into RPP:
>>> from rpp import Element >>> rpp.dumps( ... Element(tag='REAPER_PROJECT', attrib=['0.1', '4.32', '1372525904'], children=[ ... ['RIPPLE', '0'], ... ['GROUPOVERRIDE', '0', '0', '0'], ... ['AUTOXFADE', '1'], ... ])) '<REAPER_PROJECT 0.1 4.32 1372525904\n RIPPLE 0\n GROUPOVERRIDE 0 0 0\n AUTOXFADE 1\n>\n'
Element mimics the interface of xml.etree.ElementTree.Element. You can perform quering operations with findall, find, iterfind. Note that attribute and text predicates are not supported.
>>> groupoverride = r.find('.//GROUPOVERRIDE') >>> groupoverride ['GROUPOVERRIDE', '0', '0', '0'] >>> groupoverride[1:] = ['9', '9', '9'] >>> r Element(tag='REAPER_PROJECT', attrib=['0.1', '4.32', '1372525904'], children=[ ['RIPPLE', '0'], ['GROUPOVERRIDE', '9', '9', '9'], ['AUTOXFADE', '1'], ])
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
rpp-0.4.tar.gz
(5.4 kB
view hashes)
Built Distribution
rpp-0.4-py2.py3-none-any.whl
(7.1 kB
view hashes)