var _ = ishml.Template var example1=_`Carmen has a pet ${_.pick("dog","cat","emu","octopus").tag("pet")}. Saul has ${_.a.tags.pet}. I saw his ${tags=>tags.pet.text} yesterday. ` var example2=_`Carmen has ${_.a.pick().tag("pet")}, but ${tags=>tags.pet.data.problem}. Is ${tags=>tags.pet.data.value} right for you? A pet ${tags=>tags.pet.inner.data.value} is not right for me.` example2.populate({pet:[{animal:"dog",problem:"they shed a lot"}, {animal:"cat",problem:"I'm allergic"}, {animal:"emu",problem:"they can be temperamental"}, {animal:"octopus",problem:"they get bored easily"}]}) var example3=_`The humane society has ${_.list(_("dog","cat","emu","octopus").tag("pet").s).tag("list")}. I've always wanted ${_.a.pick.tags.pet.tag("my_pet")}. I wish I could take home all the ${tags=>tags.list.text}, but I should just get ${tags=>tags.my_pet.text}.` var data={available:{animal:"cat"}} var example4=_`${tags=>_.cap(tags.pet.data.available.animal).s}! I would love ${tags=>_.a(tags.pet.data.available.animal)}!` .cache("pet") .populate(data) var demo=function() { example1.say().replace("#paragraph1") example2.say().replace("#paragraph2") example3.say().replace("#paragraph3") example4.say().replace("#paragraph4") }