1.1 KiB
Tutorial
Random Selections
At its most basic, tbls
selects a random element from a table.
Suppose you have a few tables:
:: suit
Hearts
Bells
Whistles
Cups
Knives
Shovels
:: card
Ace
One
Two
[...]
Queen
King
Beast
tbls
might return "Whistles" from suit.
Or "Two" from card.
Expansion
But wait there's more.
tbls
will also expand certain text found in a table entry.
Let's add another table:
:: draw
[card] of [suit]
When you place the name of a table in [squarebrackets]
,
then tbls
views that as a placeholder
for a random item from that table.
It will expand that text.
So 'draw' might end up being "Thief of Shovels"
or "Twelve or Cups".
Filters
tbls
can run arbitary filters on text after expanding it.
Example filters can be found in src/flib.fnl
.
To apply filters, dot-chain them at the end of a table reference.
Consider the following tables:
:: origin
Evelyn eats one [fruit]
Evelyn eats many [fruit.s]
:: fruit
banana
apple
pear
s
, plural
, and pluralize
are all different ways
to call the 'plural' filter function.
Example output:
Evelyn eats one pear
Evelyn eats one bananas