Commit Graph

60 Commits

Author SHA1 Message Date
Tangent Wantwight 20b6624ed7 Also rerender on field editor change 2023-11-20 23:05:27 -05:00
Tangent Wantwight 33f07feb3d Update demo 2023-11-20 23:00:19 -05:00
Tangent Wantwight 68fd85507d Fold line breaks in HTML template blocks 2023-11-20 23:00:10 -05:00
Tangent Wantwight fa11099850 Interpolate text blocks in html helpers 2023-11-20 22:54:56 -05:00
Tangent Wantwight 44fe2165d2 const types in getOpt 2023-11-20 22:31:28 -05:00
Tangent Wantwight 63f40309c7 Live-update preview on type 2023-11-20 22:09:02 -05:00
Tangent Wantwight 710106af8b Fix bug where positional arguments after switch arguments were skipped 2023-11-20 21:34:37 -05:00
Tangent Wantwight 32c17c40f6 Trigger actions from button event handlers 2023-11-20 21:27:51 -05:00
Tangent Wantwight d5a7033adc Stub out reacting to a button click 2023-11-20 21:13:56 -05:00
Tangent Wantwight 48c07e792d Render buttons with the data needed to locate click handlers 2023-11-20 20:39:02 -05:00
Tangent Wantwight 8cba197ffd have getOptsRaw preserve TextPieces instead of folding into raw strings 2023-11-20 20:15:56 -05:00
Tangent Wantwight c8fc4678fc Teach options parser about switches 2023-11-20 19:51:38 -05:00
Tangent Wantwight 0114209320 Render button 2023-11-20 18:55:46 -05:00
Tangent Wantwight 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
Tangent Wantwight ec763f1029 POC debug aid to target words in the source code 2023-11-20 16:35:07 -05:00
Tangent Wantwight bc4a3d7eb7 Syntax change: remove line-folding pass, but accept \ + newline as word separator within command 2023-11-20 15:22:07 -05:00
Tangent Wantwight f5b79af2be Capture position information for bare & quoted words that don't contain dynamic interpolations 2023-11-18 20:48:57 -05:00
Tangent Wantwight da8429f6df Capture position information for brace-quoted words 2023-11-18 18:55:18 -05:00
Tangent Wantwight d57f409a13 Add source-position information to bare words 2023-11-18 18:37:58 -05:00
Tangent Wantwight 6ca93d6615 Allow words to carry source position information, stripped on manipulation 2023-11-18 16:59:26 -05:00
Tangent Wantwight ef16fefe48 Stub out expression handling 2023-10-20 21:02:27 -04:00
Tangent Wantwight 54c9b31cfa More HTML handlers 2023-10-20 20:36:54 -04:00
Tangent Wantwight 06633d9acd Provide helper for automatic getOpt error handling 2023-10-20 20:36:42 -04:00
Tangent Wantwight 3d5f1f70ff Propagate errors up to root of script evaluation 2023-10-20 19:06:01 -04:00
Tangent Wantwight 6196f6c4aa expose getOpt error handling to frontend 2023-10-20 18:22:08 -04:00
Tangent Wantwight 594d81b745 Start getOpt tests, impl min/max args 2023-10-20 17:48:27 -04:00
Tangent Wantwight e2f00d3e5b Simplify evaluateWord type 2023-10-20 17:47:51 -04:00
Tangent Wantwight de4495a997 Add "get card field" command 2023-10-18 22:55:34 -04:00
Tangent Wantwight 68213df945 Create option-parsing helper stub 2023-10-18 22:55:21 -04:00
Tangent Wantwight fe5f88c95e Make Vm generic over augmented information 2023-10-18 22:54:38 -04:00
Tangent Wantwight 981ddd7a6d Rename enchanted words to bare words 2023-10-18 20:09:07 -04:00
Tangent Wantwight b357d13e2c Set the card's fields from a textarea 2023-10-15 23:59:04 -04:00
Tangent Wantwight e98e9e1de7 Allow editing card text (temporary) 2023-10-15 23:25:13 -04:00
Tangent Wantwight 050c0568a8 tweak error messages a little 2023-09-08 14:47:24 -04:00
Tangent Wantwight d6eacc886b Simplify parser patterns 2023-09-08 00:47:47 -04:00
Tangent Wantwight a6c5f3e431 Stub out HTML generation 2023-09-08 00:04:00 -04:00
Tangent Wantwight ba3a3b5a26 Implement basic script evaluation 2023-09-08 00:03:48 -04:00
Tangent Wantwight 1b8929657a Simplify parsing of enchanted words- special case grammar not needed 2023-08-31 22:58:44 -04:00
Tangent Wantwight a55aca3d00 fixup parser rename 2023-08-26 01:16:31 -04:00
Tangent Wantwight 1eb6d179be Add helpers for working with words 2023-08-26 01:16:22 -04:00
Tangent Wantwight c39b4a4931 Rename parser module 2023-08-25 20:38:52 -04:00
Tangent Wantwight a97f38a7b9 Parse command substitutions 2023-08-25 19:21:00 -04:00
Tangent Wantwight ca5d64eca7 Configure automatic import sorting 2023-08-25 19:20:57 -04:00
Tangent Wantwight e538471611 Don't consume the end pattern multiple times in script pattern 2023-08-25 19:20:26 -04:00
Tangent Wantwight 9ce7ec2598 Ensure bare words don't start with " or { 2023-08-25 19:20:26 -04:00
Tangent Wantwight b031381ff7 Factor out script/command/word/bare-word patterns to permit making bracket variations 2023-08-25 19:20:26 -04:00
Tangent Wantwight 6cce5bb6ed Move Command/Script to broader-scope type 2023-08-25 19:20:22 -04:00
Tangent Wantwight a4e65e567a Reorganize tests 2023-08-25 11:13:00 -04:00
Tangent Wantwight ab4cd761b8 Implement "quoted words" 2023-08-23 01:09:56 -04:00
Tangent Wantwight 8c3953cdf0 Implement \ suppression in {} 2023-08-21 23:57:27 -04:00