cknadler / marktab-c

Concise, machine readable guitar tabs
MIT License
36 stars 7 forks source link

Idea: pull-offs/hammer-ons/slides shorthand #12

Closed russplaysguitar closed 11 years ago

russplaysguitar commented 11 years ago

Currently, pull-offs are written like so:

4:9 p 4:7

But since pull-offs (and hammer-ons, and slides) will always be on the same string, then we should be able to write it like so:

4:9 p 7

And this gets even better when there are more of them in a row:

1:12 p 10 \ 9 h 10

russplaysguitar commented 11 years ago

shoot, i guess hammer-ons aren't always on the same string... but the syntax could imply that it is a hammer-on for the same string.

cknadler commented 11 years ago

Excellent idea. You could throw bends in there as well.

1:12 p 10 \ 9 b 10 p 9 h 10

goes to:

1:12 p 1:10 \ 1:9 b 1:10 p 1:9 h 1:10

cknadler commented 11 years ago

Also, just due to the way the grammar works, the spaces would be optional for a riff on a single string like that.

1:12p10\9b10p9h10 would parse just fine.

russplaysguitar commented 11 years ago

Cool, options are nice. BTW here is my latest attempt: https://gist.github.com/3944326 (more solos in this one)

cknadler commented 11 years ago

I think there may be some ambiguity with how the xTimes statement would work.

When you have:

GAt9th BAt9th EAt9th GAt9th GAt9th BAt9th EAt9th EAt9th x2

Do you want to repeat the entire progression or just the last chord? Right now it would just repeat the last chord. It would be very useful to define some sort of progression, possibly using { } or [ ] that would be repeatable.

cknadler commented 11 years ago

I'm planning on adding a few new tokens that will clear that ambiguity up. #13 explains.

cknadler commented 11 years ago

This has been ironed out in the grammar. See docs/grammar for current information. Closing...