c1ce90fd63
WIP brace parsing for WIP parser
2024-06-05 20:26:09 -04:00
ab91d71170
Support [] interpolation in new parser
2024-06-05 20:02:47 -04:00
63d6fa836a
Add expect() & startOfWord() helpers to new parser
2024-06-05 20:02:31 -04:00
9b81056d1d
Add more recognized tokens
2024-06-05 19:59:41 -04:00
618de2ac99
Add source position to words in new parser
2024-06-05 19:32:58 -04:00
2c55e38822
WIP replacement Notcl parser
2024-06-05 19:16:56 -04:00
7c74c9e34f
Add optional (and unused) offset parameter to parse() signature
2024-06-05 00:32:04 -04:00
9acba7431f
More expr test cases
2024-05-20 20:53:39 -04:00
7e21e71a07
Clarify division behavior in tests
2024-05-20 20:39:12 -04:00
ce991fd12a
impl modulo (handle negative divisors how people expect)
2024-05-18 23:22:50 -04:00
2b6aff0dab
Fix some binding powers
2024-05-18 23:15:46 -04:00
2770a2de3b
impl unary minus
2024-05-18 21:53:30 -04:00
5a34b0f6f7
Factor out common infix op logic
2024-05-18 21:33:17 -04:00
1078dc3653
Fix binding power of * // /
2024-05-18 21:24:43 -04:00
21e8d95f98
Fix expression parser to require parsing full string
2024-05-18 21:24:19 -04:00
1a46130b1d
impl - * // /
2024-05-17 20:52:33 -04:00
bf44d84e17
impl +
2024-05-17 20:50:54 -04:00
62593b0ab8
Start stubbing out Pratt parser - parse integers
2024-05-17 20:26:54 -04:00
20b6624ed7
Also rerender on field editor change
2023-11-20 23:05:27 -05:00
33f07feb3d
Update demo
2023-11-20 23:00:19 -05:00
68fd85507d
Fold line breaks in HTML template blocks
2023-11-20 23:00:10 -05:00
fa11099850
Interpolate text blocks in html helpers
2023-11-20 22:54:56 -05:00
44fe2165d2
const types in getOpt
2023-11-20 22:31:28 -05:00
63f40309c7
Live-update preview on type
2023-11-20 22:09:02 -05:00
710106af8b
Fix bug where positional arguments after switch arguments were skipped
2023-11-20 21:34:37 -05:00
32c17c40f6
Trigger actions from button event handlers
2023-11-20 21:27:51 -05:00
d5a7033adc
Stub out reacting to a button click
2023-11-20 21:13:56 -05:00
48c07e792d
Render buttons with the data needed to locate click handlers
2023-11-20 20:39:02 -05:00
8cba197ffd
have getOptsRaw preserve TextPieces instead of folding into raw strings
2023-11-20 20:15:56 -05:00
c8fc4678fc
Teach options parser about switches
2023-11-20 19:51:38 -05:00
0114209320
Render button
2023-11-20 18:55:46 -05:00
119933b9b6
Disallow ] in toplevel bare words, not just in command substitutions
...
Rationale: This differs from Tcl syntax, but means it's possible to recover a word knowing just its location in the source, without needing the surrounding context.
2023-11-20 16:45:13 -05:00
ec763f1029
POC debug aid to target words in the source code
2023-11-20 16:35:07 -05:00
bc4a3d7eb7
Syntax change: remove line-folding pass, but accept \ + newline as word separator within command
2023-11-20 15:22:07 -05:00
f5b79af2be
Capture position information for bare & quoted words that don't contain dynamic interpolations
2023-11-18 20:48:57 -05:00
da8429f6df
Capture position information for brace-quoted words
2023-11-18 18:55:18 -05:00
d57f409a13
Add source-position information to bare words
2023-11-18 18:37:58 -05:00
6ca93d6615
Allow words to carry source position information, stripped on manipulation
2023-11-18 16:59:26 -05:00
f3be6b40f9
Update plan
2023-11-18 13:40:22 -05:00
ef16fefe48
Stub out expression handling
2023-10-20 21:02:27 -04:00
85b17d6d16
update TODO
2023-10-20 20:38:00 -04:00
54c9b31cfa
More HTML handlers
2023-10-20 20:36:54 -04:00
06633d9acd
Provide helper for automatic getOpt error handling
2023-10-20 20:36:42 -04:00
3d5f1f70ff
Propagate errors up to root of script evaluation
2023-10-20 19:06:01 -04:00
6196f6c4aa
expose getOpt error handling to frontend
2023-10-20 18:22:08 -04:00
594d81b745
Start getOpt tests, impl min/max args
2023-10-20 17:48:27 -04:00
e2f00d3e5b
Simplify evaluateWord type
2023-10-20 17:47:51 -04:00
de4495a997
Add "get card field" command
2023-10-18 22:55:34 -04:00
68213df945
Create option-parsing helper stub
2023-10-18 22:55:21 -04:00
fe5f88c95e
Make Vm generic over augmented information
2023-10-18 22:54:38 -04:00