{ "info": { "author": "Benjamin Terris", "author_email": "", "bugtrack_url": null, "classifiers": [], "description": "# transposer\n\n**transposer** helps musicians by transposing the chords of a song.\n\n## Basic usage example\n\n```bash\npython transposer.py mySong.txt G Bb # transposes the song mySong for G to B-flat\n```\n\nFor instance, let's take the file `lost-in-the-stars.txt` :\n\n```\nBefore Lord God made the sea and the land,\n G G\u00b0 A-7sus D D+\nHe held all the stars in the palm of his hand\n G6/B E7b9 A-7 A-7b5\n```\n\nYou can use transposer to transpose this song in any tone you like, for instance :\n\n```bash\npython transposer.py lost-in-the-stars.txt G F# # transposes lost-in-the-stars from G to F sharp\n```\n\nYou can then find in the newly created file (lost-in-the-stars.transposed.txt) :\n\n```\nBefore Lord God made the sea and the land,\n F# F#\u00b0 G#-7sus C# C#+\nHe held all the stars in the palm of his hand\n F#6/A# D#7b9 G#-7 G#-7b5\n```\n\n_These are the first bars of Kurt Weill's [Lost in the Stars](https://www.youtube.com/watch?v=6xJ1u920c2o)_\n\n## File format\n\nSince chord lines are auto-detected, you can structure your file as you wish, though each line must be only text or only chords (not a mix of both).\n\n## About the harmony\n\n**transposer** tries to follow as much as possible harmonic rules (eg. Cb instead of B when necessary). These are defined in the destination scale : for instance, if you want to transpose a song to Db, then the 3rd note of the minor scale is Fb and not E. You don't need your original file to follow these rules for this to work.\n\nHowever, in [traditional notation of the chords in popular music](), we avoid writing double-flat (bb) and double-sharp (x) for the sake of readability. Here, when they should appear to be perfectly correct in terms of harmony, the double-flat and double-sharp are transposed to their most simple equivalent.\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/benterris/chords-transposer", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "chordstransposer", "package_url": "https://pypi.org/project/chordstransposer/", "platform": "", "project_url": "https://pypi.org/project/chordstransposer/", "project_urls": { "Homepage": "https://github.com/benterris/chords-transposer" }, "release_url": "https://pypi.org/project/chordstransposer/0.1/", "requires_dist": null, "requires_python": "", "summary": "", "version": "0.1" }, "last_serial": 4520289, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "c60c6d6ac5f41d8a5239520df9defebe", "sha256": "9b2889c5ae77d8c79fd9285020e3da3646e78f916390fa83e4dfaa064f4bbea6" }, "downloads": -1, "filename": "chordstransposer-0.1.tar.gz", "has_sig": false, "md5_digest": "c60c6d6ac5f41d8a5239520df9defebe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3150, "upload_time": "2018-11-23T11:25:14", "url": "https://files.pythonhosted.org/packages/91/df/d0236f767c9939853a56c082231ede6b608a6a7cc143d39302285431f620/chordstransposer-0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c60c6d6ac5f41d8a5239520df9defebe", "sha256": "9b2889c5ae77d8c79fd9285020e3da3646e78f916390fa83e4dfaa064f4bbea6" }, "downloads": -1, "filename": "chordstransposer-0.1.tar.gz", "has_sig": false, "md5_digest": "c60c6d6ac5f41d8a5239520df9defebe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3150, "upload_time": "2018-11-23T11:25:14", "url": "https://files.pythonhosted.org/packages/91/df/d0236f767c9939853a56c082231ede6b608a6a7cc143d39302285431f620/chordstransposer-0.1.tar.gz" } ] }