README.md in gm-notepad-0.0.6 vs README.md in gm-notepad-0.0.8
- old
+ new
@@ -175,10 +175,14 @@
Hello SamWise
```
The line with starting with `=>` is the `interactive` buffer. The other line
is written to the `output` buffer.
+You can also roll within a table. In the `gm-notepad` type the following:
+`{first-name[1d4]}`. The system will output "Frodo", "Merry", "Pippin", or "Sam".
+You won't get a "SamWise" or "FrodoWise" (or "FrodoWiseWise").
+
To wrap up our first session, let's try one more thing. In your `gm-notepad`
session type the following: `{first-name} owes [2d6]gp to {first-name}`:
```console
Frodo owes 3gp to SamWise
@@ -211,27 +215,27 @@
- [X] Allow `{critical[{2d6+1}]}` to roll the dice then lookup the value in the critical table
- [ ] For `{critical[{2d6+1}]}`, how to handle out of bounds
- [X] Skip table lines that begin with `#`
- [X] Skip processing input lines that begin with `#`
- [X] Allow configuration to specify table delimiter
-- [ ] Add option to dump all tables to the given directory
+- [ ] Raise load error if table index is a "dice" expression
- [X] Allow configuration for where to dump data
- [ ] Normalize `WriteToTableHandler` to use a renderer
- [ ] Normalize `WriteToTableHandler` to deliver on `grep` and `index` behavior
- [X] Gracefully handle requesting an entry from a table with an index that does not exist (e.g. with test data try `+name[23]`)
- [X] Gracefully handle `+name[]`, where "name" is a registered table
- [ ] Add time to live for line expansion (to prevent infinite loops); I suspect 100 to be reasonable
- [X] Enable "up" and "down" to scroll through history
-- [ ] Add config that expands dice results while including the requested roll
- [X] Add index name when rendering table entries
- [ ] Gracefully handle loading a malformed data file (maybe?)
- [X] Add concept of history
- [ ] When expanding tables account for line expansion (via \n and \t)
- [ ] Separate the InputHandler into pre-amble (e.g. allow overrides to where we are writing, determine what command we are writing)
- [X] Create a configuration object that captures the initial input (reduce passing around parameters and persisting copies of the config)
- [ ] Add concept of "journal entry"; its not a table (perhaps) but something that you could capture notes.
-- [ ] Add column handling `{table[][]}`
+- [X] Add column handling `{table[][]}`
+- [ ] Gracefully handle cell lookup when named cell for entry is not found
- [X] Support `\{\{table}-name}` You should be able to do `\{\{culture}-name}` and first evaluate to `{arabic-name}` and then get a value from the `arabic-name` table
- [X] Ensure index names are lower-case
- [ ] Hit 100% spec coverage
### Stretch TODO
@@ -243,5 +247,7 @@
- [ ] Add auto table expansion for "{}"
- [ ] Add auto table expansion for "+"
- [ ] Add auto index expansion for "["
- [ ] Determine feasibility of adding dice to the `{}` expansion syntax (instead of the `[]` syntax)
- [ ] Add force write results to `output`
+- [ ] Add option to dump all tables to the given directory
+- [ ] Add config that expands dice results while including the requested roll