On Sat 26 Mar 2016 at 23:23:51 (+0100), Gianmaria Lari wrote: > Very sorry David and Robert my example was not at all clear. > > I have a long lilypond source that is shifted of three sixteenth note (the > file has been generated using the midi to lilypond conversion tool).
Well, I did wonder that at the time, but decided to ignore it as it's a far tougher problem. I can only give you hints as to how *I* would go about it. You'd end up with LP code containing *no* ties, so some manual post-processing would be required, or using the solution given before (ie automatic note splitting). > Here > it is a small fragment of it: > > % \time 4/4 > ... > > ... d16 ~ | % 31 > d8. d16 ~ d8 b'16 b16 ~ b16 b8 b16 ~ b16 b8 b16 ~ | % 32 > b8 a16 g16 ~ g4 > ... > > > I would like to know if does exist a tool able to convert it to the > following source lilypond code: > > ... d4 | > d8. b'16 b8 b8 b8 b8 b8. a16 | > g4. .... I would start by putting a single part in a separate file and sanitising it by removing extraneous information, ie anything like \bar "|" or anything lying between a note and a tie. I don't suppose there would be any slurs. Using an editor, I would then kill all the bar numbering, ie search to a |, move back before it, kill the rest of the line and delete a char (the newline) so that the entire part was on one uninterrupted line (with a space at each end).. (Actually, with care, you could have all the parts in a file, each on one line.) Then the clever bit, which is to write a regular expression in python (or perl or whatever) to match " ([a-gs,']+)16 ~ ([a-gs,'])+8 " and replace it with " \18. ". (I'm using english note names and writing in pseudocode.) In other words <space><notename characters>16 ~ <notename characters>8<space> is replaced by \1 which is the saved notename, followed by 8. (Using the first namename should take acre of the octavations.) I would not bother to automate the durations, but just write a rule for each combination and each way round (8 16 and 16 8 etc). I would run this and see if all the ties disappeared. If not, add another rule (eg 8 4 → 4.) and repeat. As you can see, it's a complete hack, but an enjoyable challenge if you're trying to keep your little grey cells ticking over. A strategist would probably hack the code of python-ly and do the job properly. Then you wouldn't get tripped up by any inconsistencies in the way the notes are written. Sorry that I can only come up with something that requires facility with an editor and/or programming language. Cheers, David. _______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
