Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CLI input subcommands for choosing a particular row #32

Open
jgarte opened this issue Apr 1, 2023 · 2 comments
Open

CLI input subcommands for choosing a particular row #32

jgarte opened this issue Apr 1, 2023 · 2 comments

Comments

@jgarte
Copy link
Contributor

jgarte commented Apr 1, 2023

Currently, twelve-tone asks the user to use the following notation to get a particular row form from the randomly generated run:

twelve-tone -r 2 -c 3

I'm proposing that instead we used the notation that composers are used to when they learn this stuff in school/theory classes/etc.

This would also reduce the amount of input that a user has to type at the CLI interface:

twelve-tone ri versus twelve-tone -r 2 -c 3. The latter seems too verbose of a CLI interface for getting a row form in my humble opinion.

The following gives you the retrograde-inversion from a randomly generated twelve-tone matrix.

twelve-tone ri

or

twelve-tone RI

Additionally passing in the "generator" note from which the matrix is created would be cool.

The following would get you the retrograde-inversion from the twelve-tone matrix based off of a G note.

twelve-tone G ri

or

twelve-tone G RI

I have not mentioned how we would handle accidentals in this issue but there are a few approaches we can take.

The idea would be to have p, i, r, and ri and subcommands for the CLI.

That is, prime, inversion, retrograde, and retrograde-inversion row forms as subcommands that can be passed in to the CLI of twelve-tone in order to choose the row form that you want to retrieve.

@accraze WDYT

@accraze
Copy link
Owner

accraze commented Apr 3, 2023

Hey @jgarte I love this idea and agree that the API should reflect the composers mindset.

I think most of these operations should be fairly straightforward to implement - I might take a stab at it towards the end of the month, although if anyone else is interested in the meantime, feel free to send a patch!

@jgarte
Copy link
Contributor Author

jgarte commented Apr 3, 2023

@accraze

Let me know if you'd like to pair on this over jitsi.

Otherwise, I'll try to hack on this a bit myself when I find a pocket of time to work on it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants