From 2f84c487c6860a29d4b50710621cd771084a0f26 Mon Sep 17 00:00:00 2001 From: dotmg Date: Fri, 25 Jul 2025 13:46:09 +0200 Subject: [PATCH] alternative Lyrics OK --- .../composeResources/files/ews-13.txt | 30 ++++++++++++------- .../composeResources/files/ffpm-38.txt | 4 +-- .../mg/dot/feufaro/solfa/POneStanzaLyrics.kt | 14 ++++++--- 3 files changed, 32 insertions(+), 16 deletions(-) diff --git a/composeApp/src/commonMain/composeResources/files/ews-13.txt b/composeApp/src/commonMain/composeResources/files/ews-13.txt index 22dfc10..8e8513c 100644 --- a/composeApp/src/commonMain/composeResources/files/ews-13.txt +++ b/composeApp/src/commonMain/composeResources/files/ews-13.txt @@ -4,13 +4,23 @@ N1:dmfslsfmfmdrt,dmfmrdrrmrmfslsF ssssmrdmfmrdrz4dffffm--mrrrmfrs--s(lsf)mr-rd N2:s,s,s,s,----l,s,-s,-s,dt,drl,t,t,d----dt,l,t,dddd--dt,drl,t,z4dl,l,l,l,s,--s,s,t,t,drt,(dt,d)d(d-t,)ddt,-d N3:mdrmfmrdddmfrmssssF sss--fmmrrrmmmsfmss--F ssdrmdd--ddsmd(t,rs-)f-mrmmfssss-fm N4:dddd----m,s,-s,-ddrdt,l,s,s,d----l,rr,s,dddd--drdt,l,s,s,drmdf,--f,dddds,---s,-drddfmrds,-s,d, -E1:O for a thou_sand tongues to sing/my great Re_dee_mer's praise,/my great Re_dee_mer's praise,/the glo_ries of my God and King,/_4the tri_umphs of his grace,/_2the tri_umphs of his grace,/_2the tri_3umphs of_2his grace! -E2:My gra_cious Mas_ter and my God,/as_sist me to pro_claim,/as_sist me to pro_claim,/to spread thro' all the earth a_broad/the ho_nors of your name. -E3:Je_sus! the name that charms our fears,/that bids our sor_rows cease,/that bids our sor_rows cease,/'tis mu_sic in the sin_ner's ears,/'tis life and health and peace. -E4:He speaks; and, listen_ing to his voice,/New life the dead re_ceive,/New life the dead re_ceive,/The mourn_ful bro_ken hearts re_joice,/The humble poor re_lieve. -E5:Hear him, ye deaf; his praise, ye dumb,/Your loo_sened tongues em_ploy;/Your loo_sened tongues em_ploy;/Ye blind, be_hold the Sa_viour come;/And leap, ye lame, for joy! -E6:He breaks the power of can_celled sin,/he sets the pri_soner free;/he sets the pri_soner free;/his blood can make the foul_est clean;/his blood a_vailed for me. -E7:To God all glo_ry, praise, and love/be now and e_ver given/be now and e_ver given/by saints be_low and saints a_bove,/the Church in earth and heaven. -E8:I felt my Lord’s a_ton_ing blood/Close to my soul ap_plied;/Close to my soul ap_plied;/Me, me He loved, the Son of God,/For me, for me He died! -E9:Look un_to Him, ye na_tions, Own/Your God, ye fal_len race;/Your God, ye fal_len race;/Look, and be saved through faith a_lone,/Be jus_ti_fied by grace. -E10:See all your sins on Je_sus laid:/The Lamb of God was slain,/The Lamb of God was slain,/His soul was once an of_fer_ing/For e_ver soul of man. \ No newline at end of file +O1:v3:The tri_umphs of his grace, _2the tri_umphs of his grace _2the tri_umphs of his grace The tri_umps of _his grace! +O2:v3:The ho_nors of your name./_2the ho_nors of your name./_2the ho_nors of your name the ho_nors of _your name +O3:v3:'tis life and health and peace,/_2'tis life and health and peace,/_2'tis life and health and peace 'tis life and health _and peace. +O4:v3:The hum_ble poor re_lieve,/_2The hum_ble poor re_lieve,/_2The hum_ble poor re_lieve, The hum_ble poor _re_lieve. +O5:v3:And leap, ye lame, for joy,/_2And leap, ye lame, for joy,/_2And leap, ye lame, for joy, And leap, ye lame, _for joy! +O6:v3:his blood a_vailed for me,/_2his blood a_vailed for me,/_2his blood a_vailed for me, his blood a_vailed _for me. +O7:v3:the Church in earth and heaven,/_2the Church in earth and heaven,/_2the Church in earth and heaven, the Church in earth _and heaven, +O8:v3:For me, for me He died,/_2For me, for me He died,/_2For me, for me He died, For me, for me _He died, +O9:v3:Be jus_ti_fied by grace,/_2Be jus_ti_fied by grace,/_2Be jus_ti_fied by grace Be jus_ti_fied _by grace. +O10:v3:For e_ver soul of man,/_2For e_ver soul of man,/_2For e_ver soul of man, For e_ver soul _of man. +E1:O for a thou_sand tongues to sing/my great Re_dee_mer's praise,/my great Re_dee_mer's praise,/the glo_ries of my God and King,/${O:1}_4The tri_umphs of his grace,/_2the tri_umphs of his grace,/_2the tri_3umphs of_2his grace! +E2:My gra_cious Mas_ter and my God,/as_sist me to pro_claim,/as_sist me to pro_claim,/to spread thro' all the earth a_broad/${O:2}_4the ho_nors of your name./_2the ho_nors of your name./_2the ho_3nors of _your name. +E3:Je_sus! the name that charms our fears,/that bids our sor_rows cease,/that bids our sor_rows cease,/'tis mu_sic in the sin_ner's ears,/${O:3}_4'tis life and health and peace,/_2'tis life and health and peace,/_2'tis life _2and health _and peace. +E4:He speaks; and, listen_ing to his voice,/New life the dead re_ceive,/New life the dead re_ceive,/The mourn_ful bro_ken hearts re_joice,/${O:4}_4The hum_ble poor re_lieve,/_2The hum_ble poor re_lieve,/_2The hum_3ble poor _re_lieve, +E5:Hear him, ye deaf; his praise, ye dumb,/Your loo_sened tongues em_ploy;/Your loo_sened tongues em_ploy;/Ye blind, be_hold the Sa_viour come;/${O:5}_4And leap, ye lame, for joy,/_2And leap, ye lame, for joy,/_2And leap, _2ye lame, _for joy, +E6:He breaks the power of can_celled sin,/he sets the pri_soner free;/he sets the pri_soner free;/his blood can make the foul_est clean;/${O:6}_4his blood a_vailed for me,/_2his blood a_vailed for me,/_2his blood _2a_vailed _for me. +E7:To God all glo_ry, praise, and love/be now and e_ver given/be now and e_ver given/by saints be_low and saints a_bove,/${O:7}_4the Church in earth and heaven,/_2the Church in earth and heaven,/_2the Church _2in earth _and heaven, +E8:I felt my Lord’s a_ton_ing blood/Close to my soul ap_plied;/Close to my soul ap_plied;/Me, me He loved, the Son of God,/${O:8}_4For me, for me He died,/_2For me, for me He died,/_2For me, _2for me _He died! +E9:Look un_to Him, ye na_tions, Own/Your God, ye fal_len race;/Your God, ye fal_len race;/Look, and be saved through faith a_lone,/${O:9}_4Be jus_ti_fied by grace,/_2Be jus_ti_fied by grace,/_2Be jus_3ti_fied _by grace. +E10:See all your sins on Je_sus laid:/The Lamb of God was slain,/The Lamb of God was slain,/His soul was once an of_fer_ing/${O:10}_4For e_ver soul of man,/_2For e_ver soul of man,/_2For e_3ver soul _of man. diff --git a/composeApp/src/commonMain/composeResources/files/ffpm-38.txt b/composeApp/src/commonMain/composeResources/files/ffpm-38.txt index 6cb1d9e..4852200 100644 --- a/composeApp/src/commonMain/composeResources/files/ffpm-38.txt +++ b/composeApp/src/commonMain/composeResources/files/ffpm-38.txt @@ -4,6 +4,6 @@ N1:d'#msmd,l5dls3/ddtddrr/#sffmmfrdtd/#rmfs(mf)s-(mf)smzrmf(rm)f-(rm)frz/t#frds- N2:d'smd#rf7m3/s7/ttddllsfm/#t,drm(dr)m-(dr)mdztdr(td)r-tdrtz/rfmm-zzrfmm-zz/z9/mmf4mrm N3:d'smd#sd10/mmrddtt/rrddrfmrd/z3d7sz4s8z/zzzs4z3s4/z9/d4lls3 N4:d'smd#t,f5lfd3/ddfmmss/ssllfrs#s,sd/z7d5z7s5/z3ddttz3d4/z9/ddf4s'sd -O1:v3:I\lay nirahinao, ry Tompo,_4I\lay nirahinao, ry Tompo,_4No derainay,_3No derainay;_9 -O1:v4:I\lay nirahinao,_7I\lay nirahinao,_3No derainay,_3No derainay_9 +O1:v3:I\lay nirahinao, ry Tompo, _4I\lay nirahinao, ry Tompo, _4No derainay, _3No derainay;_9 +O1:v4:_4I\lay nirahinao,_8I\lay nirahinao, _3No derainay, _3No derainay_9 Y1:He, hosana! Isaoran’ani_e ny Mesi_a,/I\zay nalefan’ny Tompo,/Ka hosana no asandratray./I\lay nira${O:1}hi_2nao _ry _Tompo_/I\lay nirahi_2nao _ry _Tompo_/No derainay,_3/No derainay,_3/Ka hosana no asandratray!/Ka hosana no asandratray!/ diff --git a/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/POneStanzaLyrics.kt b/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/POneStanzaLyrics.kt index 7226f91..b31d363 100644 --- a/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/POneStanzaLyrics.kt +++ b/composeApp/src/commonMain/kotlin/mg/dot/feufaro/solfa/POneStanzaLyrics.kt @@ -14,9 +14,11 @@ class POneStanzaLyrics { } fun setAlternativeLyrics(stanzaNumber: Int, voiceNumber: Int, text: String) { alternativeLyrics - .getOrPut(voiceNumber) { mutableMapOf() } [stanzaNumber] = text + .getOrPut(stanzaNumber) { mutableMapOf() } [voiceNumber] = text } override fun toString(): String { + val alternativeL = alternativeLyrics.values.flatMap { it.values }.joinToString("\n") + if (alternativeL != "") { return lyrics[1]+"\n"+alternativeL } return lyrics[1] } fun appendDSLyrics(stanzaNumber: Int, lyrics: String) { @@ -25,9 +27,13 @@ class POneStanzaLyrics { } } fun toList(stanzaNumber: Int): List { - return if (this.lyrics.size > stanzaNumber) { - this.lyrics[stanzaNumber].split("\n") + val alternativeMap: MutableMap? = alternativeLyrics[stanzaNumber] + val alternativeList: List = alternativeMap?.values?.toList() ?: listOf() + val result : MutableList = if (this.lyrics.size > stanzaNumber) { + this.lyrics[stanzaNumber].split("\n").toMutableList() } else - emptyList() + mutableListOf() + result.addAll(alternativeList ) + return result } } \ No newline at end of file