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