diff options
-rw-r--r-- | piosenki/a-my-nie-chcemy-uciekac-stad.json | 61 | ||||
-rw-r--r-- | piosenki/czuwajcie.json | 46 | ||||
-rw-r--r-- | piosenki/index.typ | 101 | ||||
-rw-r--r-- | piosenki/zrodlo.json | 56 | ||||
-rw-r--r-- | piosenki/zwiewnosc.json | 48 | ||||
-rw-r--r-- | spiewnik.typ | 10 |
6 files changed, 315 insertions, 7 deletions
diff --git a/piosenki/a-my-nie-chcemy-uciekac-stad.json b/piosenki/a-my-nie-chcemy-uciekac-stad.json new file mode 100644 index 0000000..634f376 --- /dev/null +++ b/piosenki/a-my-nie-chcemy-uciekac-stad.json @@ -0,0 +1,61 @@ +{ + "title": "A my nie chcemy uciekać stąd", + "hid_titles": [], + "text_authors": [ + "Jacek Kaczmarski" + ], + "composers": [ + "Przemysław Gintrowski" + ], + "performers": [ + "Przemysław Gintrowski" + ], + "release_date": "1980-03-01T00:00:00.000", + "show_rel_date_month": false, + "show_rel_date_day": false, + "yt_link": "www.youtube.com/watch?v=R-7cWBBUedg", + "add_pers": [], + "tags": [], + "parts": [ + { + "text": "Stanął w ogniu nasz wielki dom\nDym w korytarzach kręci sznury\nJest głęboka naprawdę czarna noc\nZ piwnic płonące uciekają szczury", + "chords": "d", + "shift": false + }, + { + "text": "Krzyczę przez okno, czoło w szybę wgniatam\nHaustem powietrza robię w żarze wyłom\nTen, co mnie słyszy, ma mnie za wariata\nWoła: \"Co jeszcze świrze Ci się śniło?\"", + "chords": "A B\nC d\nA B\nC d", + "shift": false + }, + { + "text": "Więc chwytam kraty rozgrzane do białości\nTwarz swoją widzę, twarz w przekleństwach\nA obok sąsiad patrzy z ciekawością\nJak płonie na nim kaftan bezpieczeństwa", + "chords": "d B\na d\nd B\na d", + "shift": false + }, + { + "text": "Dym w dziurce od klucza, a drzwi bez klamek\nPękają tynki wzdłuż spoconej ściany\nWsuwam swój język w rozpalony zamek\nŚmieje się za mną ktoś jak obłąkany", + "chords": "A B\nC d\nA B\nC d", + "shift": false + }, + { + "text": "Lecz większość śpi nadal, przez sen się uśmiecha\nA kto się zbudzi nie wierzy w przebudzenie\nKrzyk w wytłumionych salach nie zna echa\nNa rusztach łóżek milczy przerażenie", + "chords": "d a C d\nB g a d\nd a C d\nB g a d", + "shift": false + }, + { + "text": "Ci przywiązani dymem materaców\nPrzepowiadają życia swego słowa\nNam pod nogami żarzą się posadzki\nDeszcz iskier czerwony osiada na głowach", + "chords": "d a C d\nB g a d\nd a C d\nB g a d", + "shift": false + }, + { + "text": "Dym coraz gęstszy, obcy ktoś się wdziera\nA my wciśnięci w najdalszy sali kąt\nTędy! - wrzeszczy - Niech Was jasna cholera\nA my nie chcemy uciekać stąd", + "chords": "d a C d\nB g a d\nd a C d\nB g a d", + "shift": false + }, + { + "text": "A my nie chcemy uciekać stąd\nKrzyczymy w szale wściekłości i pokory\nStanął w ogniu nasz wielki dom\nDom dla psychicznie i nerwowo chorych", + "chords": "d a C d\nB g a d\nd a C d\nB g a d", + "shift": false + } + ] +} \ No newline at end of file diff --git a/piosenki/czuwajcie.json b/piosenki/czuwajcie.json new file mode 100644 index 0000000..a3c4c77 --- /dev/null +++ b/piosenki/czuwajcie.json @@ -0,0 +1,46 @@ +{ + "title": "Czuwajcie", + "hid_titles": [], + "text_authors": [], + "composers": [], + "performers": [], + "release_date": null, + "show_rel_date_month": true, + "show_rel_date_day": true, + "yt_link": "https://www.youtube.com/watch?v=QEK_fiRROK4", + "add_pers": [], + "tags": [], + "refren": { + "text": "Czuwajcie w nocy, czuwajcie w dzień\nNie dajcie wrogom bram miasta przejść\nCzuwajcie we dnie, czuwajcie w noc\nW naszym czuwaniu tkwi wielka moc", + "chords": "a d E a\na d E a\na d E a\na d E a", + "shift": true + }, + "parts": [ + { + "text": "Strzegli obrońcy murów swego miasta\nCo dzień na murach przelewali krew\nStawali oko w oko z wrogiem, ze słabością\nWróg był okrutny, obiecał miastu rzeź", + "chords": "a G a\na G a\nd E a\nd E a", + "shift": false + }, + { + "text": "Zbudź się żołnierzu stań do stu kartaczy\nCóź ze to trzecia czuwania twego noc\nJeżeli nie chcesz na zabite dzieci patrzeć\nGotowy na odparcie wroga badź", + "chords": "a G a\na G a\nd E a\nd E a", + "shift": false + }, + { + "refren": 1 + }, + { + "text": "Dzisiaj patrząc na miasta stare mury\nSzukasz w pamięci śladu krwawych dni\nMyślisz że byłbyś tak dzielny jak żołnierz który\nBronił wolności i sam nie szczędził krwi", + "chords": "a G a\na G a\nd E a\nd E a", + "shift": false + }, + { + "text": "Każdy ma swój warowny mur i miasto\nKażdy z nas w coś wierzy czegoś chce\nBroń mnie Boże bym którejś nocy nie zasnął\nGdy wróg pod murem mym przyczai się", + "chords": "a G a\na G a\nd E a\nd E a", + "shift": false + }, + { + "refren": 1 + } + ] +} \ No newline at end of file diff --git a/piosenki/index.typ b/piosenki/index.typ index 428b803..eefff4a 100644 --- a/piosenki/index.typ +++ b/piosenki/index.typ @@ -1,4 +1,4 @@ -#let lista_piosenek = ( +/*#let lista_piosenek = ( "1-juz-rozpalilo-sie-ognisko.txt", "2-plonie-ognisko-i-szumia-knieje.txt", "3-wspominajka.txt", @@ -58,7 +58,7 @@ b } -#for piosenka in lista_piosenek { +#for (nr_piosenki, piosenka) in lista_piosenek.enumerate() { let tekst = read(piosenka).split("\n\n").map(it => it.trim(regex("[\n]"))).filter(it => it != "") @@ -77,6 +77,30 @@ header, []//block(breakable: false)[#tekst.remove(0)] ) + +// + let chords_list = () + let chords_map = (0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0) + + for (nr_wersu, wers) in tekst.enumerate() { + let wers_chords = "" + for par in wers.split("\n") { + let podzielony = par.split("| ") + let chords = if podzielony.len() > 1 { + podzielony.at(1) + } else { "" } + wers_chords += chords + } + if wers_chords == "" { continue } + if wers_chords in chords_list { + + } else { + chords_list.push(wers_chords) + chords_map.insert(nr_wersu, chords_list.len()-1) + } + } +// + for wers in tekst { block()[ #for par in wers.split("\n") { @@ -96,4 +120,75 @@ } parbreak() v(0.5em) -} \ No newline at end of file +} +*/ + +#let piosenki = ( + json("a-my-nie-chcemy-uciekac-stad.json"), + json("czuwajcie.json"), + json("zwiewnosc.json"), + json("zrodlo.json"), +) + +#let show_chords(chords_label, chords) = context { + let show_chords = true + let here_i_am = here() + let found_chords = query(selector(chords_label).before(here_i_am)) + if found_chords.len() > 0 { + let refren_page = found_chords.last().location().page() + let on_the_same_page = refren_page == here_i_am.page() + let on_adjacent_page = (refren_page+1 == here_i_am.page() and calc.even(refren_page) ) + show_chords = not (on_the_same_page or on_adjacent_page) + + } + if show_chords { + return block[ + #chords + #chords_label + ] + } +} + +#let show_verse(verse_label, verse, chords) = { + grid( + columns: 2, + gutter: 10pt, + block[#verse], + show_chords(verse_label, chords) + ) +} + +#for (nr_piosenki, piosenka) in piosenki.enumerate() [ + +#context [ + #if here().position().y > 300pt { + pagebreak(weak: true) + } + = #piosenka.title +] + +#if piosenka.text_authors.len() > 0 [ + #text(size: 0.8em)[sł.: #piosenka.text_authors.first()] +] else [ + #text(size: 0.8em)[autor nieznany] +] + +#let chords_list = () + +#for (key, part) in piosenka.parts.enumerate() { + if "refren" in part { + part = piosenka.refren + } + + let verse_text = part.text + let verse_chords = part.chords + + if verse_chords not in chords_list { + chords_list.push(verse_chords) + } + let idx = chords_list.find(ch => ch == verse_chords) + let lbl = label(str(nr_piosenki)+"-"+str(idx)) + + show_verse(lbl, verse_text, verse_chords) +} +] \ No newline at end of file diff --git a/piosenki/zrodlo.json b/piosenki/zrodlo.json new file mode 100644 index 0000000..4caa1ed --- /dev/null +++ b/piosenki/zrodlo.json @@ -0,0 +1,56 @@ +{ + "title": "Źródło", + "hid_titles": [], + "text_authors": [ + "Jacek Kaczmarski" + ], + "composers": [ + "Jacek Kaczmarski" + ], + "performers": [ + "Jacek Kaczmarski" + ], + "release_date": null, + "show_rel_date_month": true, + "show_rel_date_day": true, + "yt_link": "www.youtube.com/watch?v=PIukUuanBSc", + "add_pers": [], + "tags": [], + "parts": [ + { + "text": "Płynie rzeka wąwozem, jak dnem koleiny\nKtóra sama siebie żłobiła\nRosną ściany wąwozu, z obu stron coraz wyżej\nTam na gorze są ponoć równiny\nI im więcej tej wody, tym się głębiej potoczy\nSama biorąc na siebie cień zboczy", + "chords": "e\ne\nC\nC D G\na e\nC H7", + "shift": false + }, + { + "text": "Piach spod nurtu ucieka, nurt po piachu się wije\nWłasną w czeluść ciągnie go siła\nAle jest ciągle rzeka na dnie tej rozpadliny\nJest i będzie, będzie jak była\nBo źródło bo źródło\nWciąż bije", + "chords": "e\ne\nC\nC D G\ne a\nC H7\n(e e9 H)", + "shift": false + }, + { + "text": "A na ścianach wysokich pasy barw i wyżłobień\nTej rzeki historia, tych brzegów\nCienie drzew powalonych, ślady głazów rozmytych\nMuł zgarnięty pod siebie, wbrew sobie\nA hen, w dole blask nikły ciągle ziemię rozcina\nZiemia nad nim się zrastać zaczyna", + "chords": "e\ne\nC\nC D G\na e\nC H7", + "shift": false + }, + { + "text": "Z obu stron żwir i glina, by zatrzymać go w biegu\nWoda syczy i wchłania, lecz żyje\nI zakręca, omija, wsiąka, wspina się, pieni\nAle płynie, wciąż płynie wbrew brzegom\nBo źródło bo źródło\nWciąż bije", + "chords": "e\ne\nC\nC D G\ne a\nC H7\n(e e9 H)", + "shift": false + }, + { + "text": "I są miejsca gdzie w szlamie woda niemal zastygła\nPod kożuchem brudnej zieleni\nTam ślad, prędzej niż ten kto zostawił go, znika\nNiewidoczne bagienne są sidła\nAle źródło wciąż bije, tłoczy puls miedzy stoki\nWiec jest nurt, choć ukryty dla oka", + "chords": "e\ne\nC\nC D G\na e\nC H7", + "shift": false + }, + { + "text": "Nieba prawie nie widać, czeluść chłodna i ciemna\nNiech się sypią lawiny kamieni\nI niech łączą się zbocza bezlitosnych wąwozów\nBo cóż drąży kształt przyszłych przestrzeni\nJak nie rzeka podziemna?", + "chords": "e\ne\na e\na e\nC H7", + "shift": false + }, + { + "text": "Groty w skalach wypłucze\nŻyły złote odkryje\nBo źródło\nBo źródło\nWciąż bije", + "chords": "a\ne\ne\na\nC e7 H", + "shift": false + } + ] +} \ No newline at end of file diff --git a/piosenki/zwiewnosc.json b/piosenki/zwiewnosc.json new file mode 100644 index 0000000..10d6a40 --- /dev/null +++ b/piosenki/zwiewnosc.json @@ -0,0 +1,48 @@ +{ + "title": "Zwiewność", + "hid_titles": [], + "text_authors": [ + "Bolesław Leśmian" + ], + "composers": [], + "performers": [ + "Bez Jacka" + ], + "release_date": null, + "show_rel_date_month": true, + "show_rel_date_day": true, + "yt_link": "www.youtube.com/watch?v=CtWLUzkj3iw", + "add_pers": [], + "tags": [], + "refren": { + "text": "A jak dumnie się modrze u ciszy podnóża\nJak buńczucznie do boju z mgłą się napurpurza\nA jest go tak niewiele, że mniej niż niebiesko\nNic prócz tła, biały obłok z liliową przekreską", + "chords": "a\nG\nF\nE E7", + "shift": true + }, + "parts": [ + { + "text": "Brzęk muchy w pustym dzbanie co stoi na półce\nSmuga w oczach po znikłej za oknem jaskółce\nCień ręki na murawie a wszystko niczyje\nLedwo się zazieleni, już ufa, że żyje", + "chords": "a\nG\nF\nE E7", + "shift": false + }, + { + "refren": 1 + }, + { + "text": "Dal światła w oczach wróbla, spotkanie traw z ciałem\nSzmery w studni, ja w lesie, mgłą byłeś bywałem\nUsta Twoje w alei, świt pod groblą we młynie\nNiebo w bramie na oścież, zgon pszczół w koniczynie", + "chords": "a\nG\nF\nE E7", + "shift": false + }, + { + "refren": 1 + }, + { + "text": "Chód po ziemi człowieka co na widnokręgu\nMalejąc łatwo zwiewną gęstwę ciała niesie\nI w tej gęstwie się modli i gmatwa co chwila\nI wyziera z tej gęstwy w świat i na motyla", + "chords": "a\nG\nF\nE E7", + "shift": false + }, + { + "refren": 1 + } + ] +} \ No newline at end of file diff --git a/spiewnik.typ b/spiewnik.typ index cb3acdd..3a4c7ce 100644 --- a/spiewnik.typ +++ b/spiewnik.typ @@ -16,14 +16,16 @@ text(size: 12pt)[#upper(it)] } #align(center + horizon)[ - #text(size: 2em, weight: "bold")[ *ŚPIEWNIK* ] -19 Poznański Szczep ZHR "Barć" +żeby śpiewali ] + +//19 Poznański Szczep ZHR "Barć" + #pagebreak(to: "even") #text(size: 1.3em)[ @@ -41,10 +43,10 @@ Dlatego dajemy Ci wyzwanie: Ogniskowa Korona. Ten kto ją zdobędzie, ten tylko ] #include "piosenki/index.typ" -#pagebreak() +#pagebreak(weak: true) *Notatki* -#for i in range(5) [#pagebreak()] +#for i in range(2) [#pagebreak()] #align(center)[ *SPIS TREŚCI* |