private static string BuildTab(TabParser parser) { var builder = new StringBuilder(); foreach (var tabLine in parser.TabLines) { var line = parser.TabLines.IndexOf(tabLine); builder.Append(NoteHelper.NumberToNoteOnly(tabLine.Number).PadRight(3)); foreach (var tabNote in parser.TabNotes) { builder.Append(tabNote.Line == line ? tabNote.Fret.ToString().PadRight(tabNote.LengthInCharacters) : string.Empty.PadRight(tabNote.LengthInCharacters)); } builder.AppendLine(); } builder.Append(" "); foreach (var tabNote in parser.TabNotes) { builder.Append(tabNote.Note.PadRight(tabNote.LengthInCharacters)); } builder.AppendLine(); return(builder.ToString()); }
public string GetTuningDescription() { var roots = TabLines.Select(x => NoteHelper.NumberToNoteOnly(x.Number)).ToList(); return(string.Join(",", roots)); }