From 844ff6319a241f489a4c63115d4c6d954980568d Mon Sep 17 00:00:00 2001 From: Daniel Ellison Date: Thu, 6 Aug 2026 19:20:04 -0400 Subject: [PATCH] Add a Phi-original pastoral story --- .../phonetic_neighbors_baseline.txt | 322 +++++++------- scripts/build_site.py | 111 ++++- site/style.css | 33 +- site/texts_editorial.json | 23 + texts/README.md | 1 + texts/a_second_way_for_water.md | 413 ++++++++++++++++++ texts/catalogue.json | 7 + 7 files changed, 746 insertions(+), 164 deletions(-) create mode 100644 texts/a_second_way_for_water.md diff --git a/documents/validation/phonetic_neighbors_baseline.txt b/documents/validation/phonetic_neighbors_baseline.txt index a87e7f20..7367c03b 100644 --- a/documents/validation/phonetic_neighbors_baseline.txt +++ b/documents/validation/phonetic_neighbors_baseline.txt @@ -1,90 +1,90 @@ # Generated by scripts/audit_phonetic_neighbors.py; do not hand-edit. # score unit_edits left left_gloss left_kind right right_gloss right_kind corpus_attestations -0.47 1 mia 1SG function mea thanks interjection 2574 -0.47 1 lu COND function lo PL function 2506 +0.47 1 lu COND function lo PL function 2619 +0.47 1 mia 1SG function mea thanks interjection 2585 0.47 1 shea peace content shia 3SG function 2220 -0.47 1 nila see content nela COORD function 1065 -0.47 1 ni HON.INTIM function ne NAME function 671 -0.47 1 so FUT function su OPT function 545 -0.47 1 ro HAB function ru INTS function 524 -0.47 1 si IPFV function se PASS function 401 -0.47 1 wi two content we ALSO function 382 -0.47 1 ke INFER function ki PFV function 359 +0.47 1 nila see content nela COORD function 1077 +0.47 1 ni HON.INTIM function ne NAME function 715 +0.47 1 so FUT function su OPT function 566 +0.47 1 ro HAB function ru INTS function 526 +0.47 1 si IPFV function se PASS function 405 +0.47 1 wi two content we ALSO function 395 +0.47 1 ke INFER function ki PFV function 363 0.47 1 mu zero content mo CMPR function 284 0.47 1 no IMP function nu ORD function 236 -0.47 1 te CESS function ti REP function 142 -0.47 1 le HON.ROLE function li RESTR function 137 -0.47 1 lau twenty-seven-group content lao BECAUSE function 122 -0.47 1 nia ON function nea aha interjection 121 -0.47 1 wia how many function wea TOWARD function 115 +0.47 1 te CESS function ti REP function 143 +0.47 1 le HON.ROLE function li RESTR function 141 +0.47 1 nia ON function nea aha interjection 132 +0.47 1 wia how many function wea TOWARD function 129 +0.47 1 lau twenty-seven-group content lao BECAUSE function 125 0.47 1 nophi story content nophe ABST.CLF function 109 -0.47 1 pi POL function pe SUFF function 109 -0.47 1 hi DIR function he IRR function 104 -0.47 1 noa position content nua COM function 93 -0.47 1 phena kind content phina FEW function 86 +0.47 1 hi DIR function he IRR function 107 +0.47 1 pi POL function pe SUFF function 107 +0.47 1 noa position content nua COM function 95 +0.47 1 phena kind content phina FEW function 92 0.47 1 phoi nine-group content phoe ANT function 80 0.47 1 phue wise content phoe ANT function 66 0.47 1 thua fair content thoa AMONG function 58 -0.47 1 sua who function soa sorry interjection 31 -0.47 1 wenu tonic content weno when function 8 -0.47 1 phelu hold content phelo light content 377 -0.47 1 philu candle content phelu hold content 375 -0.47 1 kelu become content kelo frame content 224 -0.47 1 loa give content lua lovely interjection 222 -0.47 1 phaelo feel content phaelu peaceful content 208 -0.47 1 welao good content wilao long-for content 173 +0.47 1 sua who function soa sorry interjection 33 +0.47 1 wenu tonic content weno when function 9 +0.47 1 phelu hold content phelo light content 395 +0.47 1 philu candle content phelu hold content 393 +0.47 1 loa give content lua lovely interjection 238 +0.47 1 kelu become content kelo frame content 237 +0.47 1 phaelo feel content phaelu peaceful content 210 +0.47 1 welao good content wilao long-for content 175 +0.47 1 shero night content shiro tree content 168 0.47 1 shilu blue content shelu book content 164 0.47 1 shelu book content shelo signify content 163 -0.47 1 shero night content shiro tree content 140 -0.47 1 kolo equal content kulo guide content 125 -0.47 1 solae explain content sulae warm content 125 -0.47 1 ruela path content roela scroll content 120 +0.47 1 kolo equal content kulo guide content 127 +0.47 1 solae explain content sulae warm content 126 +0.47 1 ruela path content roela scroll content 122 +0.47 1 philo day content phelo light content 116 +0.47 1 philu candle content philo day content 114 0.47 1 laenu commons content laeno long content 113 -0.47 1 sulai musician content sulae warm content 108 -0.47 1 philo day content phelo light content 106 -0.47 1 philu candle content philo day content 104 +0.47 1 sulai musician content sulae warm content 109 0.47 1 keru bright content kiru chisel content 67 +0.47 1 shero night content sheru slow content 64 0.47 1 menua counselor content menoa face content 60 -0.47 1 shero night content sheru slow content 60 +0.47 1 kelua morning content keloa rough content 59 0.47 1 kima scribe content kema strong content 58 -0.47 1 kelua morning content keloa rough content 53 +0.47 1 molu container content mulu low content 52 0.47 1 thero fire content theru thick content 52 -0.47 1 molu container content mulu low content 49 0.47 1 solae explain content solai gold content 39 0.47 1 phui flute content phoi nine-group content 38 0.47 1 thero fire content thiro serene content 38 +0.47 1 wiroa hopeful content wirua wet content 38 0.47 1 helui change content heloi generous content 37 +0.47 1 thola bring content thula spring content 31 0.47 1 kuma drum content koma head content 30 -0.47 1 seru commit content siru marker content 27 -0.47 1 tinoa dye content tenoa tool content 27 -0.47 1 palu plate content palo touch content 26 +0.47 1 palu plate content palo touch content 29 +0.47 1 seru commit content siru marker content 28 +0.47 1 tinoa dye content tenoa tool content 28 0.47 1 phiro elegant content phero fern content 26 0.47 1 lonae respond content lonai width content 25 0.47 1 phui flute content phue wise content 24 +0.47 1 kirua sand content kiroa sign content 23 0.47 1 kenua energy content kenoa hemp content 22 0.47 1 solai gold content sulai musician content 22 -0.47 1 wiroa hopeful content wirua wet content 21 +0.47 1 kolo equal content kolu steady content 21 0.47 1 liru fabric content liro green content 20 -0.47 1 thola bring content thula spring content 20 0.47 1 keloe companion content keloi summer content 19 -0.47 1 kirua sand content kiroa sign content 19 0.47 1 pheru endure content phero fern content 19 0.47 1 shela art content shila winter content 19 0.47 1 tisu needle content tiso sharp content 19 -0.47 1 kolo equal content kolu steady content 18 0.47 1 thiru exit content theru thick content 15 0.47 1 luwi flexible content lowi vine content 14 0.47 1 wiru basket content weru poet content 12 0.47 1 thenui direct content thenoi falls-short content 11 0.47 1 thonai responsible content thunai student content 11 0.47 1 kiru chisel content kiro precise content 10 +0.47 1 lumira descendant content lumera nourish content 9 +0.47 1 heru herb content hiru intuit content 7 0.47 1 kolai pigment content kulai tooth content 7 0.47 1 kori leather content kuri right content 7 -0.47 1 lumira descendant content lumera nourish content 7 0.47 1 moeli hearth content mueli plain (unadorned) content 7 0.47 1 lunai vision content lonai width content 6 0.47 1 sheloa bloom content shiloa pure content 6 -0.47 1 heru herb content hiru intuit content 5 0.47 1 leru beach content liru fabric content 5 0.47 1 welua fragile content weloa loom content 5 0.47 1 thaemo precious content thaemu sincere content 3 @@ -93,160 +93,160 @@ 0.47 1 tesu iron content tisu needle content 2 0.47 1 thorai bless content thorae facilitator content 2 0.47 1 thiru exit content thiro serene content 1 -0.50 1 po POT function to PST function 3587 -0.50 1 ko FOC function to PST function 3260 -0.50 1 thia 2SG function shia 3SG function 3163 -0.50 1 nia ON function mia 1SG function 2677 -0.50 1 tha DECL.COMP function ha PROX function 1784 -0.50 1 sha QUOT.COMP function ha PROX function 1611 -0.50 1 pha INT.COMP function ha PROX function 1378 -0.50 1 sa HON.RESPECT function ha PROX function 1226 -0.50 1 na NEC function ma NEG function 974 -0.50 1 tha DECL.COMP function sha QUOT.COMP function 971 -0.50 1 tho DECL.COMP.CLOSE function sho QUOT.COMP.CLOSE function 971 -0.50 1 tho DECL.COMP.CLOSE function so FUT function 970 -0.50 1 nua COM function mua LOC function 802 -0.50 1 sho QUOT.COMP.CLOSE function so FUT function 797 -0.50 1 tho DECL.COMP.CLOSE function pho INT.COMP.CLOSE function 739 -0.50 1 tha DECL.COMP function pha INT.COMP function 738 -0.50 1 ta one content ka CAUS function 688 -0.50 1 whu REL function su OPT function 669 -0.50 1 tho DECL.COMP.CLOSE function ho ASSUM function 628 -0.50 1 tha DECL.COMP function sa HON.RESPECT function 586 -0.50 1 pho INT.COMP.CLOSE function sho QUOT.COMP.CLOSE function 566 -0.50 1 pha INT.COMP function sha QUOT.COMP function 565 -0.50 1 pho INT.COMP.CLOSE function so FUT function 565 -0.50 1 ta one content pa INCH function 521 -0.50 1 ko FOC function po POT function 499 -0.50 1 sho QUOT.COMP.CLOSE function ho ASSUM function 455 -0.50 1 ho ASSUM function so FUT function 454 -0.50 1 sha QUOT.COMP function sa HON.RESPECT function 413 +0.50 1 po POT function to PST function 3809 +0.50 1 ko FOC function to PST function 3470 +0.50 1 thia 2SG function shia 3SG function 3182 +0.50 1 nia ON function mia 1SG function 2699 +0.50 1 tha DECL.COMP function ha PROX function 1950 +0.50 1 sha QUOT.COMP function ha PROX function 1769 +0.50 1 pha INT.COMP function ha PROX function 1519 +0.50 1 sa HON.RESPECT function ha PROX function 1365 +0.50 1 tho DECL.COMP.CLOSE function so FUT function 1018 +0.50 1 tha DECL.COMP function sha QUOT.COMP function 1017 +0.50 1 tho DECL.COMP.CLOSE function sho QUOT.COMP.CLOSE function 1017 +0.50 1 na NEC function ma NEG function 996 +0.50 1 nua COM function mua LOC function 846 +0.50 1 sho QUOT.COMP.CLOSE function so FUT function 837 +0.50 1 tho DECL.COMP.CLOSE function pho INT.COMP.CLOSE function 768 +0.50 1 tha DECL.COMP function pha INT.COMP function 767 +0.50 1 ta one content ka CAUS function 702 +0.50 1 whu REL function su OPT function 667 +0.50 1 tho DECL.COMP.CLOSE function ho ASSUM function 655 +0.50 1 tha DECL.COMP function sa HON.RESPECT function 613 +0.50 1 pho INT.COMP.CLOSE function so FUT function 588 +0.50 1 pho INT.COMP.CLOSE function sho QUOT.COMP.CLOSE function 587 +0.50 1 pha INT.COMP function sha QUOT.COMP function 586 +0.50 1 ta one content pa INCH function 534 +0.50 1 ko FOC function po POT function 523 +0.50 1 ho ASSUM function so FUT function 475 +0.50 1 sho QUOT.COMP.CLOSE function ho ASSUM function 474 +0.50 1 sha QUOT.COMP function sa HON.RESPECT function 432 0.50 1 mo CMPR function no IMP function 370 0.50 1 ki PFV function pi POL function 343 -0.50 1 ka CAUS function pa INCH function 337 -0.50 1 ki PFV function ti REP function 315 -0.50 1 theo read content pheo POST function 300 -0.50 1 shua come content sua who function 290 -0.50 1 he IRR function se PASS function 287 +0.50 1 ka CAUS function pa INCH function 342 +0.50 1 ki PFV function ti REP function 317 +0.50 1 theo read content pheo POST function 306 +0.50 1 shua come content sua who function 294 +0.50 1 he IRR function se PASS function 293 0.50 1 shea peace content phea AS function 259 -0.50 1 hea hear content phea AS function 235 -0.50 1 pho INT.COMP.CLOSE function ho ASSUM function 223 -0.50 1 hi DIR function si IPFV function 218 +0.50 1 hea hear content phea AS function 237 +0.50 1 pho INT.COMP.CLOSE function ho ASSUM function 225 +0.50 1 hi DIR function si IPFV function 219 0.50 1 theo read content sheo THAN function 218 -0.50 1 pheo POST function sheo THAN function 198 -0.50 1 wheo elder content pheo POST function 188 -0.50 1 te CESS function ke INFER function 186 -0.50 1 phoa do content thoa AMONG function 183 -0.50 1 pha INT.COMP function sa HON.RESPECT function 180 -0.50 1 pi POL function ti REP function 158 -0.50 1 thelao CONS function shelao SUMM function 155 +0.50 1 pheo POST function sheo THAN function 204 +0.50 1 wheo elder content pheo POST function 202 +0.50 1 te CESS function ke INFER function 189 +0.50 1 phoa do content thoa AMONG function 185 +0.50 1 pha INT.COMP function sa HON.RESPECT function 182 +0.50 1 thelao CONS function shelao SUMM function 159 +0.50 1 pi POL function ti REP function 156 0.50 1 mu zero content nu ORD function 150 -0.50 1 heloi generous content sheloi MANY function 130 -0.50 1 ke INFER function pe SUFF function 125 -0.50 1 seloi insightful content sheloi MANY function 123 +0.50 1 heloi generous content sheloi MANY function 131 +0.50 1 ke INFER function pe SUFF function 127 +0.50 1 seloi insightful content sheloi MANY function 124 +0.50 1 hina what function phina FEW function 122 +0.50 1 hola laugh content sola DISJ function 121 0.50 1 koma head content kona VOC function 121 -0.50 1 hola laugh content sola DISJ function 118 -0.50 1 hina what function phina FEW function 115 -0.50 1 wheo elder content sheo THAN function 106 -0.50 1 thola bring content sola DISJ function 99 -0.50 1 te CESS function pe SUFF function 93 -0.50 1 muo INTO function nuo um interjection 84 +0.50 1 wheo elder content sheo THAN function 114 +0.50 1 thola bring content sola DISJ function 105 +0.50 1 te CESS function pe SUFF function 94 +0.50 1 muo INTO function nuo um interjection 86 0.50 1 whola invite content sola DISJ function 81 -0.50 1 phui flute content sui DUR function 79 -0.50 1 phue wise content thue THROUGH function 73 -0.50 1 pheno full content sheno ADD function 65 +0.50 1 phui flute content sui DUR function 80 +0.50 1 phue wise content thue THROUGH function 78 +0.50 1 pheno full content sheno ADD function 68 0.50 1 thoa AMONG function soa sorry interjection 49 0.50 1 whoa whole content thoa AMONG function 49 +0.50 1 heno satisfy content sheno ADD function 47 0.50 1 kua where function tua no interjection 47 -0.50 1 heno satisfy content sheno ADD function 45 +0.50 1 thenoi falls-short content henoi ENOUGH function 43 0.50 1 shai CONC function sai ouch interjection 42 -0.50 1 thenoi falls-short content henoi ENOUGH function 42 +0.50 1 thua fair content sua who function 42 0.50 1 thuo prosper content whuo WITHOUT function 42 0.50 1 whuo WITHOUT function phuo phew interjection 42 -0.50 1 thua fair content sua who function 40 0.50 1 shela art content thela how function 35 0.50 1 phei AWAY function thei BETWEEN function 30 -0.50 1 wheli ANY function theli EACH function 21 +0.50 1 wheli ANY function theli EACH function 23 0.50 1 thei BETWEEN function hei hey interjection 20 0.50 1 phei AWAY function hei hey interjection 14 +0.50 1 sheli impatient content theli EACH function 14 0.50 1 sheli impatient content wheli ANY function 13 -0.50 1 sheli impatient content theli EACH function 12 -0.50 1 wemo plain content weno when function 12 -0.50 1 shelu book content phelu hold content 530 -0.50 1 sano know content whano stand content 401 -0.50 1 selu flow content phelu hold content 382 -0.50 1 phelu hold content helu smooth content 376 -0.50 1 thelu dialogue content phelu hold content 373 -0.50 1 phena kind content thena thing content 332 -0.50 1 shena calm content thena thing content 303 -0.50 1 sena pattern content thena thing content 294 -0.50 1 thema guardian content thena thing content 292 -0.50 1 shua come content thua fair content 274 -0.50 1 phao parent content shao three-group content 252 -0.50 1 thinu put content thimu time content 212 +0.50 1 wemo plain content weno when function 13 +0.50 1 shelu book content phelu hold content 548 +0.50 1 selu flow content phelu hold content 421 +0.50 1 sano know content whano stand content 404 +0.50 1 phelu hold content helu smooth content 395 +0.50 1 thelu dialogue content phelu hold content 391 +0.50 1 phena kind content thena thing content 349 +0.50 1 shena calm content thena thing content 320 +0.50 1 sena pattern content thena thing content 311 +0.50 1 thema guardian content thena thing content 309 +0.50 1 shua come content thua fair content 276 +0.50 1 phao parent content shao three-group content 256 +0.50 1 thinu put content thimu time content 222 +0.50 1 wheo elder content theo read content 216 +0.50 1 whalo large content thalo walk content 210 +0.50 1 shaelo brave content phaelo feel content 209 0.50 1 melu friend content nelu revere content 208 -0.50 1 wheo elder content theo read content 208 -0.50 1 shaelo brave content phaelo feel content 207 -0.50 1 whalo large content thalo walk content 199 -0.50 1 shelu book content selu flow content 166 -0.50 1 shelu book content helu smooth content 160 +0.50 1 shelu book content selu flow content 187 +0.50 1 shelu book content helu smooth content 161 0.50 1 shelu book content thelu dialogue content 157 -0.50 1 phoa do content soa sorry interjection 140 -0.50 1 phoa do content whoa whole content 140 -0.50 1 phao parent content hao pardon interjection 133 -0.50 1 siora joy content phiora spirit content 133 -0.50 1 phewo sage content shewo true content 132 -0.50 1 noshi near (adj) content nophi story content 124 +0.50 1 phoa do content soa sorry interjection 142 +0.50 1 phoa do content whoa whole content 142 +0.50 1 phao parent content hao pardon interjection 137 +0.50 1 siora joy content phiora spirit content 137 +0.50 1 phewo sage content shewo true content 135 +0.50 1 phiro elegant content shiro tree content 130 +0.50 1 philo day content whilo white content 128 +0.50 1 noshi near (adj) content nophi story content 125 0.50 1 shao three-group content hao pardon interjection 123 -0.50 1 korua heart content torua year content 119 -0.50 1 philo day content whilo white content 118 -0.50 1 phulae mouth content sulae warm content 112 -0.50 1 korua heart content porua purpose content 111 -0.50 1 hea hear content shea peace content 106 +0.50 1 korua heart content torua year content 122 +0.50 1 thiro serene content shiro tree content 121 +0.50 1 phulae mouth content sulae warm content 113 +0.50 1 korua heart content porua purpose content 112 +0.50 1 hea hear content shea peace content 108 +0.50 1 sila community content whila hair content 107 0.50 1 nophi story content mophi wool content 106 -0.50 1 phiro elegant content shiro tree content 104 -0.50 1 sila community content whila hair content 102 0.50 1 helui change content phelui word content 97 0.50 1 teli bell content keli device content 95 -0.50 1 thiro serene content shiro tree content 95 0.50 1 shelira forest content phelira mistaken content 88 -0.50 1 thero fire content shero night content 83 -0.50 1 phelona require content pheloma serve content 74 +0.50 1 thero fire content shero night content 85 +0.50 1 phelona require content pheloma serve content 77 +0.50 1 sholu complete content tholu space content 70 +0.50 1 sila community content shila winter content 70 0.50 1 noru bowl content moru wall content 69 -0.50 1 porua purpose content torua year content 68 0.50 1 thelui sanctuary content phelui word content 68 -0.50 1 sholu complete content tholu space content 67 +0.50 1 thola bring content hola laugh content 68 +0.50 1 porua purpose content torua year content 66 0.50 1 keru bright content teru process content 65 -0.50 1 sila community content shila winter content 65 -0.50 1 phero fern content shero night content 62 -0.50 1 thuroa grow content shuroa shelter content 61 +0.50 1 phero fern content shero night content 64 +0.50 1 thuroa grow content shuroa shelter content 64 0.50 1 kunoa knee content punoa society content 60 -0.50 1 thola bring content hola laugh content 59 -0.50 1 thorui beginning content sorui circle content 57 +0.50 1 thorui beginning content sorui circle content 58 0.50 1 whila hair content shila winter content 57 0.50 1 phero fern content thero fire content 55 0.50 1 shena calm content phena kind content 55 0.50 1 thorui beginning content shorui weary content 55 0.50 1 wetha cloth content wesha lazy content 53 0.50 1 phena kind content sena pattern content 46 -0.50 1 whola invite content hola laugh content 41 +0.50 1 telua accurate content kelua morning content 45 +0.50 1 thinu put content whinu smell content 45 +0.50 1 whola invite content hola laugh content 44 +0.50 1 kelua morning content pelua paper content 42 0.50 1 nuwi clear content muwi interior content 40 -0.50 1 telua accurate content kelua morning content 40 0.50 1 wemi ally content weni imagine content 38 -0.50 1 kelua morning content pelua paper content 37 0.50 1 phoi nine-group content hoi onward interjection 37 -0.50 1 sheluo listen content theluo steward content 35 +0.50 1 sheluo listen content theluo steward content 36 0.50 1 thelomi lake content selomi weave content 35 -0.50 1 thinu put content whinu smell content 33 -0.50 1 norae method content morae sense content 30 +0.50 1 selu flow content helu smooth content 34 +0.50 1 norae method content morae sense content 33 +0.50 1 seru commit content sheru slow content 31 +0.50 1 sheru slow content theru thick content 31 +0.50 1 koru harmonious content toru roof content 30 +0.50 1 thelu dialogue content selu flow content 30 0.50 1 helui change content thelui sanctuary content 29 -0.50 1 sheru slow content theru thick content 29 -0.50 1 seru commit content sheru slow content 28 +0.50 1 seru commit content theru thick content 28 0.50 1 themui faith content shemui utter content 28 -0.50 1 seru commit content theru thick content 27 -0.50 1 sorui circle content shorui weary content 26 -0.50 1 kenoa hemp content tenoa tool content 23 -0.50 1 koru harmonious content toru roof content 23 -0.50 1 pheno full content heno satisfy content 22 -0.50 1 thola bring content whola invite content 22 -0.50 1 shoru dull content thoru proud content 21 +0.50 1 thola bring content whola invite content 28 +0.50 1 sorui circle content shorui weary content 27 +0.50 1 poru productive content toru roof content 25 diff --git a/scripts/build_site.py b/scripts/build_site.py index 1caf316a..bc5e059e 100644 --- a/scripts/build_site.py +++ b/scripts/build_site.py @@ -3618,6 +3618,7 @@ def book_page(body, title, footer_nav="", editorial=False, contents=False): "rabbit_heart", "window_water", "river_home", + "water_sprout", } @@ -3690,6 +3691,10 @@ def load_texts_editorial(): "argument_passages", "ledger_rows", }, + "story": { + "story_blocks", + "story_passages", + }, } if form not in form_fields: raise ValueError(f"unknown texts editorial form: {form}") @@ -3707,6 +3712,7 @@ def load_texts_editorial(): "refusal": "Refusal", "original": "Original", "essay": "Original", + "story": "Original", }[form] if work["method"] != expected_method: raise ValueError( @@ -3743,6 +3749,7 @@ def load_texts_editorial(): "context", "dialogue", "essay", + "story", "record", "pillars", } @@ -3772,6 +3779,7 @@ def load_texts_editorial(): "refusal": ["context", "refusal", "apparatus"], "original": ["dialogue", "record", "record", "pillars"], "essay": ["essay", "record", "record", "pillars"], + "story": ["story"], } if form in expected_kinds and major_kinds != expected_kinds[form]: raise ValueError( @@ -3882,6 +3890,34 @@ def load_texts_editorial(): raise ValueError( f"invalid essay editorial structure: {repo_path}" ) + if form == "story": + if any( + treatment[field] != 0 + for field in ( + "interlinear_blocks", + "interlinear_stanzas", + "source_free_blocks", + "source_free_stanzas", + "complete_readings", + "notes", + "tables", + "pillar_sections", + ) + ): + raise ValueError( + f"story editorial treatment has incompatible shared counts: " + f"{repo_path}" + ) + if ( + not isinstance(treatment["story_blocks"], int) + or treatment["story_blocks"] < 1 + or not isinstance(treatment["story_passages"], int) + or treatment["story_passages"] < treatment["story_blocks"] + or treatment["inner_dividers"] != treatment["story_blocks"] - 1 + ): + raise ValueError( + f"invalid story editorial structure: {repo_path}" + ) for field in ( "opening_paragraphs", "interlinear_blocks", @@ -4167,6 +4203,7 @@ def texts_motif(name): "rabbit_heart": (rabbit, heart), "window_water": (window, droplet), "river_home": (waves, dwelling), + "water_sprout": (waves, sprout), } if name not in motifs: raise ValueError(f"unknown texts motif: {name}") @@ -4219,6 +4256,11 @@ def text_section_icon(kind): '' '' ), + "story": ( + '' + '' + '' + ), "record": ( '' '' + f'

{lines[0]}

' + '

' + 'Word-by-word gloss: ' + f"{lines[1]}

" + '
' + '

' + 'Close English reading: ' + f"{lines[2]}

" + "
" + "" + ) + return ( + '
' + + "".join(rendered) + + "
" + ) + + body = re.sub(r"
(.*?)
", convert, body, flags=re.S) + if block_count != treatment["story_blocks"]: + raise ValueError( + f"texts editorial story block count differs in {repo_path}: " + f"expected {treatment['story_blocks']}, found {block_count}" + ) + if passage_count != treatment["story_passages"]: + raise ValueError( + f"texts editorial story passage count differs in {repo_path}: " + f"expected {treatment['story_passages']}, found {passage_count}" + ) + if "
" in body:
+        raise ValueError(f"editorial text left an untreated fence in {repo_path}")
+    return body
+
+
 def style_text_fences(body, repo_path, treatment):
     """Turn a literary work's exact fences into readings and interlinear rows."""
     counts = {
@@ -4947,7 +5050,7 @@ def apply_text_editorial(body, source, repo_path, treatment):
 
     opening_boundary = (
         r"(?=

)" - if treatment["form"] in {"original", "essay"} + if treatment["form"] in {"original", "essay", "story"} else r"
" ) opening_pattern = re.compile( @@ -5062,6 +5165,8 @@ def apply_text_editorial(body, source, repo_path, treatment): class_name = "text-dialogue-section" elif kind == "essay": class_name = "text-essay-section" + elif kind == "story": + class_name = "text-story-section" elif kind == "record": class_name = "text-record-section" elif kind == "pillars": @@ -5085,6 +5190,8 @@ def apply_text_editorial(body, source, repo_path, treatment): body = style_original_dialogue(body, repo_path, treatment) elif treatment["form"] == "essay": body = style_original_essay(body, repo_path, treatment) + elif treatment["form"] == "story": + body = style_original_story(body, repo_path, treatment) else: body = style_text_fences(body, repo_path, treatment) body, note_count = re.subn( diff --git a/site/style.css b/site/style.css index 39b1cbcb..2de9ff64 100644 --- a/site/style.css +++ b/site/style.css @@ -2569,6 +2569,9 @@ a.text-certification-mark:focus-visible { .text-original-page .text-reading-map ol { grid-template-columns: repeat(4, minmax(0, 1fr)); } +.text-story-page .text-reading-map ol { + grid-template-columns: minmax(0, 16rem); +} .text-rabbit-heart-page .text-reading-map ol { gap: .55rem 1.1rem; grid-template-columns: repeat(3, minmax(0, 1fr)); @@ -2611,6 +2614,7 @@ a.text-certification-mark:focus-visible { .text-context, .text-dialogue-section, .text-essay-section, +.text-story-section, .text-record-section, .text-pillars-section { margin-top: 4rem; } .text-editorial h2.text-method-heading { @@ -2650,6 +2654,7 @@ a.text-certification-mark:focus-visible { .text-apparatus-heading .text-section-icon { color: var(--muted); } .text-context-heading .text-section-icon { color: var(--gold); } .text-dialogue-heading .text-section-icon { color: var(--sage); } +.text-story-heading .text-section-icon { color: var(--sage); } .text-record-heading .text-section-icon { color: var(--gold); } .text-pillars-heading .text-section-icon { color: var(--sage); } .text-section-number { @@ -2861,6 +2866,24 @@ a.text-certification-mark:focus-visible { .text-essay-passage p { margin: 0; } .text-essay-close-reading { margin-top: .58rem; } +.text-story-scene { + border-left: 2px solid var(--sage); + margin: .8rem 0 1.5rem; + padding: .25rem 0 .25rem 1.35rem; +} +.text-story-passage { + margin: 0; + padding: .85rem 0 .92rem; +} +.text-story-passage + .text-story-passage { margin-top: .12rem; } +.text-story-passage p { margin: 0; } +.text-story-close-reading { margin-top: .58rem; } +.text-story-page .text-inner-divider { + border-top-color: var(--sage); + margin: 2.35rem 0 2.35rem 1.35rem; + width: 3.5rem; +} + .text-literal-line { color: var(--ink); font-family: var(--serif); @@ -4616,6 +4639,9 @@ table.text-ledger { .text-original-page .text-reading-map ol { grid-template-columns: minmax(0, 1fr); } + .text-story-page .text-reading-map ol { + grid-template-columns: minmax(0, 1fr); + } .text-rabbit-heart-page .text-reading-map ol { gap: 0 .8rem; grid-template-columns: repeat(2, minmax(0, 1fr)); @@ -4827,6 +4853,10 @@ table.text-ledger { grid-template-columns: 3.8rem minmax(0, 1fr); } .text-dialogue-name { font-size: .64rem; } + .text-story-scene { + margin-left: -.15rem; + padding-left: .9rem; + } .text-ledger td, .text-ledger td:first-child { gap: .5rem; @@ -5375,7 +5405,8 @@ table.text-ledger { .text-notes, .text-pillar-reflection, .text-collection-detail, - .text-dialogue-turn { break-inside: avoid; } + .text-dialogue-turn, + .text-story-passage { break-inside: avoid; } .text-dialogue-turn { gap: .8em; grid-template-columns: 4.5em minmax(0, 1fr); diff --git a/site/texts_editorial.json b/site/texts_editorial.json index 3c9554fc..e0b22df4 100644 --- a/site/texts_editorial.json +++ b/site/texts_editorial.json @@ -680,6 +680,29 @@ 6, 5 ] + }, + "texts/a_second_way_for_water.md": { + "form": "story", + "phi_title": "phialu nu wi shoeka", + "motif": "water_sprout", + "sections": [ + { + "title": "The story", + "kind": "story" + } + ], + "opening_paragraphs": 2, + "interlinear_blocks": 0, + "interlinear_stanzas": 0, + "source_free_blocks": 0, + "source_free_stanzas": 0, + "complete_readings": 0, + "notes": 0, + "tables": 0, + "pillar_sections": 0, + "inner_dividers": 5, + "story_blocks": 6, + "story_passages": 96 } } } diff --git a/texts/README.md b/texts/README.md index e56c920d..a561c02a 100644 --- a/texts/README.md +++ b/texts/README.md @@ -18,6 +18,7 @@ Short works each have one Markdown file. An author collection gets its own direc | The Thing Holds Its Mending | Original | An essay on a rebuilt wall that narrows its own claim under objection and leaves the chooser of criteria open. | [Read](the_mended_wall.md) | | When a Report Is Enough | Original | An essay on a dusk warning that justifies one chosen inspection and leaves the next walk unassigned. | [Read](the_report_at_dusk.md) | | Worth Does Not Require a Valuer | Original | An essay on a fallen branch where a failed grammatical proof leaves a smaller claim about worth and a reason to attend. | [Read](the_worth_of_a_fallen_branch.md) | +| A Second Way for Water | Original | A pastoral story about a broken clay channel that must serve two living places, with help from one useful hoofprint. | [Read](a_second_way_for_water.md) | | The North Wind and the Sun | Translation | The complete fable, followed by its translation limits. | [Read](north_wind_and_sun.md) | | Article 1 of the Universal Declaration of Human Rights | Translation | Both sentences, with rights, reason, conscience, and obligation kept distinct. | [Read](human_rights_article_one.md) | | The Babel Text | Translation | Genesis 11:1-9 in Phi translation. | [Read](babel_text.md) | diff --git a/texts/a_second_way_for_water.md b/texts/a_second_way_for_water.md new file mode 100644 index 00000000..e10e07f1 --- /dev/null +++ b/texts/a_second_way_for_water.md @@ -0,0 +1,413 @@ +# phialu nu wi shoeka: A Second Way for Water + +Near the end of the dry season, an old clay channel fails to carry water to a hillside orchard. The water has not vanished. Below the break it has made a wet habitat, with reeds around a frog's pond and an insect overhead. samira brings the problem to the village, where repair becomes a question of how to keep two living places supplied. A goat named thinoe offers assistance in the customary manner of goats: without being asked. + +This is an original Phi story. Phi is the source text, and the English lines follow it as close readings. Eight optional roots enter from seven learning modules when the work needs their distinctions; the remaining content vocabulary is base. + +## The story + +``` +kurathi meluna lumae noshi to nai. pheralu sui sheloi philo to ma shua. +dry season end near PST be. rain DUR MANY day PST NEG come. +(The end of the dry season was near. Rain had not come for many days.) + +lureko shiro koshira nia molira kurathi to kelu. limu shiro lirowa mulu to kelu. +fruit tree grove ON hill dry PST become. young tree leaf low PST become. +(The fruit-tree grove on the hill had grown dry. The young trees' leaves hung low.) + +ne samira ha koshira to ro temoe. shia wei limu shiro phialu to ro loa. +NAME samira PROX grove PST HAB tend. 3SG DAT young tree water PST HAB give. +(samira regularly tended this grove. They regularly gave water to the young trees.) + +ne samira theli shiro kire to sano. shia mua muila theli tumeki to sano. +NAME samira EACH tree shape PST know. 3SG LOC earth EACH root PST know. +(samira knew the shape of every tree. They knew every root in the earth.) + +serao mueri phialu selu shoeka lue thula wea koshira to nai. ne samira ta kelua ha shoeka to nilaki. +old clay water flow route ABL spring TOWARD grove PST be. NAME samira one morning PROX route PST inspect. +(An old clay water channel ran from the spring towards the grove. One morning, samira inspected it.) + +phialu kau limu shiro to ma kamo. muila mua shiro tumeki kurathi to nai. +water ALL young tree PST NEG arrive. earth LOC tree root dry PST be. +(The water did not reach the young trees. The earth around their roots was dry.) + +shoeka mua koshira muhena to phelu. muila pai pukate wirua to pa kelu. +route LOC grove dust PST hold. earth NEAR break wet PST INCH become. +(The channel through the grove held dust. Near the break, the earth had begun to grow wet.) + +ne samira lue koshira wea thula shoeka to thalo. shia mua shoeka phialu to somela. +NAME samira ABL grove TOWARD spring route PST walk. 3SG LOC route water PST observe. +(samira followed the channel from the grove towards the spring. They watched the water inside it.) + +shoeka shuna to pukate. phialu thue ha pukate mue shoeka to selu. +route edge PST break. water THROUGH PROX break OUT.OF route PST flow. +(One edge of the channel had broken. Water flowed through the break and out of the channel.) + +muila phou shoeka wirua to nai. weoli mua ha muila to thuroa. +earth BELOW route wet PST be. reed LOC PROX earth PST grow. +(The earth below the channel was wet. Reeds grew there.) + +pukate newu to ma nai. shumu nia shoeka shuna to thuroa. +break new PST NEG be. moss ON route edge PST grow. +(The break was not new. Moss grew along the channel's broken edge.) + +tuleno lue muphia to tupi. nireku leo phialu to wapi. +frog ABL mud PST jump. insect ABOVE water PST fly. +(A frog jumped from the mud. An insect flew above the water.) + +ne samira tuleno haoni to hea. ha haoni lue phou shoeka to shua. +NAME samira frog voice PST hear. PROX voice ABL BELOW route PST come. +(samira heard the frog's voice. It came from below the channel.) + +ne samira ha wirua menuro to somela. shia tha phialu phirae menuro to lumera tho to sano. +NAME samira PROX wet habitat PST observe. 3SG DECL.COMP water different habitat PST nourish DECL.COMP.CLOSE PST know. +(samira observed this wet habitat. They knew that the water was nourishing a different habitat.) +``` + +--- + +``` +ne samira mua wirua muila phialu shoeka to somela. shia ha shoeka to thalo. +NAME samira LOC wet earth water route PST observe. 3SG PROX route PST walk. +(samira traced the water's route through the wet earth. They followed it on foot.) + +phialu kau saphei melothe to kamo. lo weoli roa ha melothe to thuroa. +water ALL shallow pond PST arrive. PL reed AROUND PROX pond PST grow. +(The water reached a shallow pond. Reeds grew around it.) + +weoli tumeki muphia to phelu. ha tumeki phialu sheru to ka kelu. +reed root mud PST hold. PROX root water slow PST CAUS become. +(The reeds' roots held the mud. They slowed the water.) + +shomelu lue lo weoli leo phialu to nai. phialu phou ha shomelu neri to nai. +shadow ABL PL reed ABOVE water PST be. water BELOW PROX shadow cool PST be. +(Shade from the reeds lay over the water. Beneath that shade, the water was cool.) + +pelori phialu to milau. tuleno sio weoli to manolu. nireku leo melothe to wapi. +bird water PST drink. frog BESIDE reed PST stay. insect ABOVE pond PST fly. +(A bird drank from the water. The frog stayed beside the reeds. An insect flew over the pond.) + +ne samira pheo ha somela shoeka to thalo. shoeka lue pukate wea koshira kurathi to nai. +NAME samira POST PROX observe route PST walk. route ABL break TOWARD grove dry PST be. +(After watching the pond, samira followed the channel. From the break to the grove, it was dry.) + +phialu mua shoeka to ma selu. ne samira mua limu shiro tumeki muila to palo. +water LOC route PST NEG flow. NAME samira LOC young tree root earth PST touch. +(No water flowed through that part of the channel. samira touched the earth at the young trees' roots.) + +ne samira nia kurathi muila manuwe to thinu. shia pheo ha nia wirua muila manuwe to thinu. +NAME samira ON dry earth hand PST put. 3SG POST PROX ON wet earth hand PST put. +(samira placed a hand on the dry earth. Afterwards, they laid it on the wet earth.) + +muila kethua to nai. limu shiro lirowa mulu to nai. soli lirowa to pa kureno. +earth hard PST be. young tree leaf low PST be. SOME leaf PST INCH wither. +(The earth was hard. The young trees' leaves hung low, and some had begun to wither.) + +ne samira lue koshira wea wirua menuro to thalo. shia thasu phialu selu to morae. +NAME samira ABL grove TOWARD wet habitat PST walk. 3SG modest water flow PST sense. +(samira walked back from the grove to the wet habitat. They sensed that the flow was modest.) + +limu shiro liona to nai. wirua menuro we liona to nai. +young tree live PST be. wet habitat ALSO live PST be. +(The young trees were alive. The wet habitat was alive too.) + +lu he ne samira shoeka sholu shiroka. wirua menuro phialu so ma phelu. lu he shia shoeka ma shiroka. limu shiro phialu so ma howela. +COND IRR NAME samira route complete repair. wet habitat water FUT NEG hold. COND IRR 3SG route NEG repair. young tree water FUT NEG receive. +(If samira repaired the channel completely, the wet habitat would hold no water. If they did not repair it, the young trees would receive none.) + +ne samira sio pukate to meilo. shia sukima to phaelo. shia tha shia shoeka po sonu shiroka tho to remo. +NAME samira BESIDE break PST sit. 3SG fear PST feel. 3SG DECL.COMP 3SG route POT alone repair DECL.COMP.CLOSE PST think. +(samira sat beside the break. They felt fear. They had thought they could repair the channel alone.) + +shia to teku whunei. shia nia korua manuwe to thinu. +3SG PST short breathe. 3SG ON heart hand PST put. +(They breathed in short breaths. They put a hand over their heart.) + +shia shane to wiresu. lila ne samira wei sila shane shia kau silawo to turema. +3SG tell PST postpone. PURP NAME samira DAT community tell 3SG ALL village PST return. +(They had postponed the telling. samira returned to the village to tell the community.) +``` + +--- + +``` +lo miona howai mua welamu shomelu to sholei. ne thinoe karume to nai. shia sio lopia to manolu. +PL person evening LOC elm shadow PST gather. NAME thinoe goat PST be. 3SG BESIDE child PST stay. +(That evening, people gathered in the shade of an elm. thinoe was a goat. The goat stayed beside the child.) + +ne samira wei sila tha shoeka shuna to pukate tho to shane. shia tha phialu mue shoeka to selu tho to shane. +NAME samira DAT community DECL.COMP route edge PST break DECL.COMP.CLOSE PST tell. 3SG DECL.COMP water OUT.OF route PST flow DECL.COMP.CLOSE PST tell. +(samira told the community that the channel's edge had broken. They said that water was flowing out of it.) + +shia tha limu shiro muila kurathi to nai tho to shane. shia tha phialu wirua menuro to lumera tho to shane. +3SG DECL.COMP young tree earth dry PST be DECL.COMP.CLOSE PST tell. 3SG DECL.COMP water wet habitat PST nourish DECL.COMP.CLOSE PST tell. +(They reported that the earth at the young trees was dry. They also said that the water was nourishing a wet habitat.) + +lo miona ne samira to sheluo. mawha miona to haolu. +PL person NAME samira PST listen. NONE person PST speak. +(The people listened to samira. Nobody spoke.) + +shia weoli nela tuleno to thekao. shia sha mia sukima to phaelo. mia tha mia shoeka po sonu shiroka tho to remo. mia shane to wiresu sho to haolu. +3SG reed COORD frog PST acknowledge. 3SG QUOT.COMP 1SG fear PST feel. 1SG DECL.COMP 1SG route POT alone repair DECL.COMP.CLOSE PST think. 1SG tell PST postpone QUOT.COMP.CLOSE PST speak. +(samira acknowledged the reeds and the frog. "I felt afraid. I thought I could repair the channel alone. I postponed the report," they said.) + +lo miona maeli to manolu. howeli lo welamu lirowa to roke. +PL person quiet PST stay. wind PL elm leaf PST move. +(The people stayed quiet. Wind moved the elm leaves.) + +wheo sha thia weno pukate to hekawi sho to haolu. ne samira sha mia ha kelua pukate to hekawi sho to haolu. +elder QUOT.COMP 2SG when break PST find QUOT.COMP.CLOSE PST speak. NAME samira QUOT.COMP 1SG PROX morning break PST find QUOT.COMP.CLOSE PST speak. +(The elder asked, "When did you find the break?" samira answered, "I found it this morning.") + +wheo sha lo mia newu kelua shoeka so hi nila sho to haolu. lo miona to nawo. +elder QUOT.COMP PL 1SG new morning route FUT DIR see QUOT.COMP.CLOSE PST speak. PL person PST agree. +(The elder said, "Tomorrow morning, we will see the channel directly." The people agreed.) + +lopia sha wa phialu wi shoeka po phelu sho to haolu. +child QUOT.COMP Q water two route POT hold QUOT.COMP.CLOSE PST speak. +(The child asked, "Can water hold two routes?") + +wheo to seniku. shia sha phialu ta shoeka to ma seru sho to haolu. +elder PST smile. 3SG QUOT.COMP water one route PST NEG commit QUOT.COMP.CLOSE PST speak. +(The elder smiled. "The water did not commit to one route," they said.) + +toru whori miona sha lo mia lue serao toru mueta po thola sho to haolu. ne thinoe welamu lirowa to nuola. +roof mend person QUOT.COMP PL 1SG ABL old roof ceramic POT bring QUOT.COMP.CLOSE PST speak. NAME thinoe elm leaf PST eat. +(The roof mender said, "We can bring tiles from the old roof." thinoe ate an elm leaf.) + +lo miona ha howai kanuro to ma phoa. nilaki to hasi. +PL person PROX evening decision PST NEG do. inspect PST wait. +(The people made no decision that evening. The inspection waited for morning.) + +lo miona tha lo shia newu kelua shoeka so nuawe nilaki tho to nawo. ne samira meraho to kelu. +PL person DECL.COMP PL 3SG new morning route FUT together inspect DECL.COMP.CLOSE PST agree. NAME samira relieved PST become. +(They agreed to inspect the channel together the next morning. samira was relieved.) + +sila ha shane to phelu. ne samira tupeka mulu to kelu. +community PROX tell PST hold. NAME samira burden low PST become. +(The community now held the report. samira's burden eased.) +``` + +--- + +``` +sila newu kelua lue thula wea koshira shoeka to thalo. +community new morning ABL spring TOWARD grove route PST walk. +(The next morning, the community walked the channel from the spring towards the grove.) + +lopia neo ne thinoe to thalo. lo phirae miona noe lopia nela ne thinoe to thalo. +child FRONT NAME thinoe PST walk. PL different person BEHIND child COORD NAME thinoe PST walk. +(The child walked in front of thinoe. The others followed behind the child and the goat.) + +lo miona mua pukate phialu selu to somela. lo shia mua wirua menuro weoli nela tuleno to somela. +PL person LOC break water flow PST observe. PL 3SG LOC wet habitat reed COORD frog PST observe. +(At the break, they watched the water flow. They observed the reeds and the frog in the wet habitat.) + +phialu lue thula to kolu selu. telo roe manuwe ha selu to morae. +water ABL spring PST steady flow. farmer INS hand PROX flow PST sense. +(Water flowed steadily from the spring. The farmer felt the current with a hand.) + +lo shia mua koshira limu shiro nela kurathi muila to somela. telo sha phialu selu thasu nai sho to haolu. +PL 3SG LOC grove young tree COORD dry earth PST observe. farmer QUOT.COMP water flow modest be QUOT.COMP.CLOSE PST speak. +(In the grove, they observed the young trees and dry earth. The farmer said, "The flow is modest.") + +telo sha lo mia shoeka po thesa pisha sho to haolu. +farmer QUOT.COMP PL 1SG route POT careful split QUOT.COMP.CLOSE PST speak. +(The farmer said, "We can split the channel carefully.") + +toru whori miona sio pukate to kuneshi. shia roe thumai mua muphia wi shoeka to kire. +roof mend person BESIDE break PST kneel. 3SG INS finger LOC mud two route PST shape. +(The roof mender knelt beside the break. With a finger, they shaped two routes in the mud.) + +shia sha phialu thue ta shoeka wea menuro po selu. phialu thue phirae shoeka wea koshira po selu sho to haolu. +3SG QUOT.COMP water THROUGH one route TOWARD habitat POT flow. water THROUGH different route TOWARD grove POT flow QUOT.COMP.CLOSE PST speak. +(They said, "Water can flow through one channel towards the habitat. It can flow through the other towards the grove.") + +ne samira sha lu menuro tuleno phelu. henoi phialu mua thiku shoeka na manolu sho to haolu. +NAME samira QUOT.COMP COND habitat frog hold. ENOUGH water LOC small route NEC stay QUOT.COMP.CLOSE PST speak. +(samira said, "If the habitat is to hold the frog, enough water must remain in the smaller channel.") + +lopia sha mueta phialu po tawemi. sileta shia po ma palo sho to haolu. +child QUOT.COMP ceramic water POT cover. sun 3SG POT NEG touch QUOT.COMP.CLOSE PST speak. +(The child said, "A tile can cover the water. The sun cannot touch it.") + +lopia mueta leo muphia to thinu. shomelu nia muphia to nai. +child ceramic ABOVE mud PST put. shadow ON mud PST be. +(The child placed a tile above the mud. Its shadow lay across the surface.) + +wheo sha lo mia lue serao toru mueta po thola. ha mueta wei menuro shoeka shomelu po loa sho to haolu. +elder QUOT.COMP PL 1SG ABL old roof ceramic POT bring. PROX ceramic DAT habitat route shadow POT give QUOT.COMP.CLOSE PST speak. +(The elder said, "We can bring tiles from the old roof. This tile can give shade to the habitat's channel.") + +lo miona tha lo shia tulawe mesatu so phoa tho to nawo. lo shia tha lo shia pheo soli philo wi shoeka so somela tho to nawo. +PL person DECL.COMP PL 3SG reversible try FUT do DECL.COMP.CLOSE PST agree. PL 3SG DECL.COMP PL 3SG POST SOME day two route FUT observe DECL.COMP.CLOSE PST agree. +(The people agreed to make a reversible trial. They would observe both channels again after several days.) + +lu mesatu thonuki. lo miona mueta po roke nela lo shia mueri po whori. +COND try fail. PL person ceramic POT move COORD PL 3SG clay POT mend. +(If the trial failed, the people could move the tiles and mend the clay.) + +lo shia wirua muila nela lirowa kire so somethi. lo miona riporu to kanu. +PL 3SG wet earth COORD leaf shape FUT monitor. PL person task PST choose. +(They would monitor the wet earth and the leaves' shape. The people chose their tasks.) + +ne samira shoeka kire riporu to kanu. toru whori miona mueta thinu riporu to kanu. phirae miona mueri thola riporu to kanu. +NAME samira route shape task PST choose. roof mend person ceramic put task PST choose. different person clay bring task PST choose. +(samira chose the channel-shaping task. The roof mender chose to place the tiles. Another person chose to bring the clay.) + +lopia sha mia ne thinoe so somethi sho to haolu. lo miona to hola. +child QUOT.COMP 1SG NAME thinoe FUT monitor QUOT.COMP.CLOSE PST speak. PL person PST laugh. +(The child said, "I will monitor thinoe." The people laughed.) +``` + +--- + +``` +lo miona pheo horathe mua pukate to haromi. lo shia mue shoeka keloa mueri to pilu. +PL person POST dawn LOC break PST meet. PL 3SG OUT.OF route rough clay PST take. +(After dawn, the people met at the break. They took loose clay out of the channel.) + +lo miona wirua mueri to pumeli. lo shia roe ha mueri pukate to whori. +PL person wet clay PST knead. PL 3SG INS PROX clay break PST mend. +(They kneaded wet clay. With it, they mended the break.) + +mueri pheo pumeli sulae to kelu. muphia nia lo miona manuwe to nai. +clay POST knead warm PST become. mud ON PL person hand PST be. +(The clay grew warm after kneading. Mud was on the people's hands.) + +toru whori miona lue serao toru mueta to thola. lopia thiku mueta to kolua. +roof mend person ABL old roof ceramic PST bring. child small ceramic PST carry. +(The roof mender brought tiles from the old roof. The child carried the small ones.) + +ne samira mua mueri wi shoeka to kire. wheo mueta nia shoeka shuna to thinu. +NAME samira LOC clay two route PST shape. elder ceramic ON route edge PST put. +(samira shaped two channels in the clay. The elder set tiles along their edges.) + +lila phialu thue wi shoeka selu lo miona shoeka to pisha. +PURP water THROUGH two route flow PL person route PST split. +(The people split the channel so water could flow through both routes.) + +ne thinoe sio lopia to manolu. shia muphia to morae. lopia shia to kulo. +NAME thinoe BESIDE child PST stay. 3SG mud PST sense. child 3SG PST guide. +(thinoe stayed beside the child. The goat sensed the mud. The child guided it.) + +lopia ne thinoe wea shurano shoeka to kulo. ne thinoe muphia to kanu. +child NAME thinoe TOWARD safe route PST guide. NAME thinoe mud PST choose. +(The child guided thinoe towards the safe channel. thinoe chose the mud.) + +ne thinoe mua wirua mueri paloi to thinu. shia roe paloi mueri to pesa. +NAME thinoe LOC wet clay foot PST put. 3SG INS foot clay PST push. +(thinoe planted a foot in the wet clay. The goat pressed the clay with it.) + +paloi kire mua mueri to manolu. lo miona ha kire to nila. +foot shape LOC clay PST stay. PL person PROX shape PST see. +(The shape of the hoof remained in the clay. The people saw it.) + +wheo sha ne thinoe mua winora sithora ma phelu sho to haolu. lopia sha whekai shia ha kire to shorema sho to haolu. +elder QUOT.COMP NAME thinoe LOC plan role NEG hold QUOT.COMP.CLOSE PST speak. child QUOT.COMP CONTR 3SG PROX shape PST contribute QUOT.COMP.CLOSE PST speak. +(The elder said, "thinoe holds no role in the plan." The child said, "But the goat contributed this shape.") + +lo miona to hola. wheo sha lo mia ha shorema kelomi sho to haolu. +PL person PST laugh. elder QUOT.COMP PL 1SG PROX contribute accept QUOT.COMP.CLOSE PST speak. +(The people laughed. The elder said, "We accept this contribution.") + +lo miona phialu to leiro. ha paloi kire phialu sheru to ka kelu. +PL person water PST release. PROX foot shape water slow PST CAUS become. +(The people released the water. The hoofprint slowed it.) + +soli phialu mue shoeka to selu. ne samira roe mueri ha lokue to whori. +SOME water OUT.OF route PST flow. NAME samira INS clay PROX place PST mend. +(Some water escaped the channel. samira mended that place with clay.) + +phialu sio heru thepalu to sholei. heru muila wirua to kelu. phialu thue whalo shoeka to selu. +water BESIDE herb garden PST gather. herb earth wet PST become. water THROUGH large route PST flow. +(Water gathered beside the herb garden. The earth around the herbs became wet. Water flowed through the larger channel.) + +lo miona li ha paloi kire to phelu. lo shia phirae paloi kire helu to ka kelu. +PL person RESTR PROX foot shape PST hold. PL 3SG different foot shape smooth PST CAUS become. +(The people kept only this hoofprint. They smoothed the other hoofprints.) + +lo miona soli mueta nia shoeka shuna to thinu. lo shia soli mueta leo phialu to thinu. +PL person SOME ceramic ON route edge PST put. PL 3SG SOME ceramic ABOVE water PST put. +(They placed some tiles along the channel edges. They set others above the water.) + +shomelu nia phialu to nai. phialu phou mueta neri to nai. +shadow ON water PST be. water BELOW ceramic cool PST be. +(Shade lay across the water. Beneath the tiles, the water was cool.) + +phialu lorui mua wi shoeka to kolu selu. lo miona tenoa to nomira. +water afternoon LOC two route PST steady flow. PL person tool PST collect. +(By afternoon, water flowed steadily through both channels. The people gathered their tools.) + +lopia ne thinoe paloi to sawa. ne thinoe sio shoeka mua muphia phirae paloi to thinu. lo miona to hola. +child NAME thinoe foot PST wash. NAME thinoe BESIDE route LOC mud different foot PST put. PL person PST laugh. +(The child washed thinoe's foot. Beside the channel, thinoe put another foot in the mud. The people laughed.) +``` + +--- + +``` +ne samira pheo soli philo kau shoeka to turema. shia lue thula wea wi shoeka to thalo. +NAME samira POST SOME day ALL route PST return. 3SG ABL spring TOWARD two route PST walk. +(After several days, samira returned to the channel. They walked from the spring towards the two routes.) + +wirua menuro phialu to phelu. weoli kolu to manolu. tuleno mua shomelu to manolu. +wet habitat water PST hold. reed steady PST stay. frog LOC shadow PST stay. +(The wet habitat held water. The reeds remained steady. The frog stayed in the shade.) + +ne samira tuleno haoni to hea. soli lirowa to te kureno. +NAME samira frog voice PST hear. SOME leaf PST CESS wither. +(samira heard the frog's voice. Some leaves had stopped withering.) + +muila mua koshira wirua to nai. limu shiro lirowa to rihe. +earth LOC grove wet PST be. young tree leaf PST rise. +(The earth in the grove was wet. The young trees' leaves had risen.) + +lila phialu mua wi shoeka weilo kelu ne samira soli mueta to roke. +PURP water LOC two route balanced become NAME samira SOME ceramic PST move. +(samira moved some tiles so the water in the two channels would become balanced.) + +telo mua koshira muila to palo. wheo mua pisha mueta to nilaki. +farmer LOC grove earth PST touch. elder LOC split ceramic PST inspect. +(The farmer touched the earth in the grove. The elder inspected the tiles at the fork.) + +ne samira wirua muila nela lirowa kire to somethi. shia phialu selu to somela. +NAME samira wet earth COORD leaf shape PST monitor. 3SG water flow PST observe. +(samira monitored the wet earth and the shape of the leaves. They watched the water flow.) + +sila norawhi kau shoeka to turema. lo miona maeli to manolu. +community dusk ALL route PST return. PL person quiet PST stay. +(At dusk, the community returned to the channel. The people stood quietly.) + +howeli lue shiro ta lirowa to leiro. lirowa nia phialu to lepa. +wind ABL tree one leaf PST release. leaf ON water PST fall. +(The wind released one leaf from a tree. The leaf fell onto the water.) + +lirowa mua phialu sorui to roke. shia roa thiku mueta to roke. +leaf LOC water circle PST move. 3SG AROUND small ceramic PST move. +(The leaf circled in the water. It turned around a small tile.) + +shia wea pisha to selu. lirowa mua pisha wea weoli to roke. +3SG TOWARD split PST flow. leaf LOC split TOWARD reed PST move. +(It flowed towards the fork. At the split, the leaf moved towards the reeds.) + +phirae phialu wea limu shiro to selu. lopia sha lirowa weoli shoeka to kanu sho to maeli haolu. +different water TOWARD young tree PST flow. child QUOT.COMP leaf reed route PST choose QUOT.COMP.CLOSE PST quiet speak. +(Other water flowed towards the young trees. "The leaf chose the reed channel," the child said quietly.) + +lirowa kau weoli to kamo. phialu kau limu shiro tumeki to kamo. +leaf ALL reed PST arrive. water ALL young tree root PST arrive. +(The leaf reached the reeds. Water reached the young trees' roots.) + +ne samira sha phialu wi shoeka phelu sho to haolu. tuleno lue shomelu to tupi. ne thinoe tuleno to somela. +NAME samira QUOT.COMP water two route hold QUOT.COMP.CLOSE PST speak. frog ABL shadow PST jump. NAME thinoe frog PST observe. +("The water holds two routes," samira said. The frog jumped from the shade. thinoe watched the frog.) + +ne samira tei nuelo ha wi selu to somela. +NAME samira UNTIL dark PROX two flow PST observe. +(samira watched the two flows until dark.) + +ha wi selu phirae shoeka to phelu. ha wi selu ta phialu to nai. +PROX two flow different route PST hold. PROX two flow one water PST be. +(The two flows held different routes. They were one water.) +``` diff --git a/texts/catalogue.json b/texts/catalogue.json index 2acc0d16..0a1f8ec4 100644 --- a/texts/catalogue.json +++ b/texts/catalogue.json @@ -42,6 +42,13 @@ "method": "Original", "summary": "A fallen branch tests Phi's claim that worth does not wait for approval. Its grammatical proof fails, but the smaller commitment leaves the speaker with a reason to attend and no assigned act." }, + { + "path": "a_second_way_for_water.md", + "kind": "short", + "title": "phialu nu wi shoeka: A Second Way for Water", + "method": "Original", + "summary": "At the end of a dry season, a broken clay channel leaves an orchard thirsty and quietly makes a wet habitat. A village finds a second route for the water with old roof tiles, patient observation, and one uncommissioned hoofprint." + }, { "path": "north_wind_and_sun.md", "kind": "short",