Skip to main content

A command-line tool for formatting and transposing chord charts

Project description

Chorder

A command-line tool for creating, formatting, and transposing chord charts. This tool helps musicians format their chord charts with proper chord alignment above lyrics and provides useful features like transposition and file handling.

Features

  • Format chord charts with chords properly aligned above lyrics
  • Transpose entire songs to different keys
  • Support for complex chord notations (e.g., Am7, G/B, F#dim)
  • Handle both sharp (#) and flat (b) notations
  • Convert between sharp and flat notations
  • Read from files or interactive input
  • Save formatted output to files

Installation

pip install chorder

Usage

Basic Command Format

chorder [-i INPUT_FILE] [-o OUTPUT_FILE] [-t SEMITONES] [-f]

Command Line Options

  • -i, --input: Input file path (optional)
  • -o, --output: Output file path (optional)
  • -t, --transpose: Number of semitones to transpose (optional, can be negative)
  • -f, --use-flats: Use flat notation instead of sharps (optional)

Input Format

Write your chord chart with chords enclosed in pipe symbols (|) where they should appear above the lyrics:

|D|I don't want to |A|close my eyes|Em|
I don't want to fall asleep
'Caue I'd |G|miss you baby

Examples

  1. Interactive Mode (type lines, press Ctrl+D when done):
chorder
  1. Process a File:
chorder -i song.txt
  1. Save Output to File:
chorder -i song.txt -o formatted_song.txt
  1. Transpose Up by 2 Semitones:
chorder -i song.txt -t 2
  1. Transpose Down by 3 Semitones and Save:
chorder -i song.txt -t -3 -o transposed_song.txt
  1. Use Flat Notation:
chorder -i song.txt -f

Example Input and Output

Input:

|D|I don't want to |A|close my eyes|Em|

Output with default sharp notation:

D               A            Em
I don't want to close my eyes

Output with flat notation ( 1 semitone transposed) (-f):

Eb              Bb           Fm
I don't want to close my eyes

Tips

  1. Place chord markers (|C|) exactly where you want the chord to appear above the lyrics
  2. For complex chords, just write them normally: |Cmaj7|, |F#m7b5|
  3. When transposing, the tool automatically handles both sharp and flat notations
  4. Use the -f flag if you prefer flat notation (e.g., Bb instead of A#)
  5. Empty lines are preserved in the output for formatting
  6. You can pipe input/output to/from other commands using standard UNIX pipes

Development

To install for development:

git clone https://github.com/yourusername/chorder.git
cd chorder
pip install -e .

License

This project is licensed under the MIT License - see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

galshaya-chorder-0.1.0.tar.gz (6.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

galshaya_chorder-0.1.0-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file galshaya-chorder-0.1.0.tar.gz.

File metadata

  • Download URL: galshaya-chorder-0.1.0.tar.gz
  • Upload date:
  • Size: 6.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.10.10

File hashes

Hashes for galshaya-chorder-0.1.0.tar.gz
Algorithm Hash digest
SHA256 761d965812de59c437f9f6edbef8437260d5596a75161f80bd3a5ef2d577982b
MD5 028286c3de3fa1cc87a597ef73c07aa5
BLAKE2b-256 1fbf7e8719de9fe1b4576a12333fb764283935570f4ec3a47d1c0f3c2fbc0796

See more details on using hashes here.

File details

Details for the file galshaya_chorder-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for galshaya_chorder-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 600effc5358287b07453a0dc70257c280023c259e0f4fd965e17bc7f532835a7
MD5 48aee259cdf7198d7b679b2374f18310
BLAKE2b-256 d75c58d9144e90416b6225a313972307371a35627716ffdac8437cb36ff1660f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page