Ich habe ein Lua-Skript geschrieben, stecke aber leider trotz mehrmaligem Umschreiben fest und brauche Hilfe.
Ziel ist, dass Akkord-Symbole aus angewählten Takten des ersten Systems auf alle anderen kopiert werden für eine weitere Verarbeitung (die immerhin schon funktioniert).
Manuelles Beispiel: Erstes System mit Akkordsymbolen komplett anwählen, kopieren, nächstes System (ohne Akkordsymbole) anwählen, einfügen bis inklusive letztem System (nun sind in allen Systemen der Partitur Akkordsymbole).
Der Fehler ist, dass die gesamte Quelle auf alle einzelnen Takte kopiert wird und nicht nach einander vertikal.
Das Problem liegt an "chordsregion" in Zeile 17: Hab es mit weiteren loops probiert aber ich bekomm es einfach nicht hin
Hier der Code in seinem letzten, ausführbaren Zustand wenn auch mit falschem Ergebnis:
Code: Alles auswählen
stavescollection = finale.FCStaves()
stavescollection:LoadAll()
measurescollection = finale.FCMeasures()
measurescollection:LoadAll()
region = finale.FCMusicRegion()
region:SetCurrentSelection()
chordsregion = finale.FCChords()
chordsregion:LoadAllForRegion(finenv.Region())
for staves in each(stavescollection) do
stavesindex = stavescollection:GetIndexOf(staves)
if stavesindex ~= 0 then
for measures in each(measurescollection) do
measuresindex = measurescollection:GetIndexOf(measures)
cell = finale.FCCell(measuresindex, stavesindex)
print(cell)
for chord in each(chordsregion) do
chord:ConnectCell(cell)
chord.ChordVisible = true
chord:SaveNew()
end
end
end
end