<- Back to shtanton's homepage
aboutsummaryrefslogtreecommitdiff
path: root/main
Commit message (Collapse)AuthorAgeFilesLines
* Changes the implementation of Atomise and Compound to no longer use goroutinesCharlie Stanton2023-04-211-10/+3
| | | | This results in a massive performance boost, ~4x speedup
* Add a and A commands for global substitutionCharlie Stanton2023-04-212-4/+12
|
* Add ^xyz^ as a shorthand for ="xyz"= in subexCharlie Stanton2023-04-211-1/+1
|
* Adds some shorthands for substituting the beginning and end of the path registerCharlie Stanton2023-04-202-16/+53
|
* Replaces the inflexible delete all with separate DeleteValue and DeletePath ↵Charlie Stanton2023-04-202-4/+10
| | | | commands
* Add a shorthand for subexes that start and end with `, ~, = or "Charlie Stanton2023-04-201-1/+7
|
* Adds a substitute path command: SCharlie Stanton2023-04-203-52/+44
|
* Remove filters and various commands that are no longer wantedCharlie Stanton2023-04-206-720/+4
| | | | These have all been made redundant by the incredible substitute command
* Remove the need for a semicolon after each commandCharlie Stanton2023-04-202-11/+3
|
* Add commands to append to and swap with the path and X registersCharlie Stanton2023-04-202-1/+33
|
* Adds the noop command 'o'Charlie Stanton2023-04-191-0/+2
|
* Upgrades the substitute command to also act as a filterCharlie Stanton2023-04-192-4/+20
| | | | Substitute now captures the command after it and only runs it if the substitution is a success
* Implements subex substitutions for the value registerCharlie Stanton2023-04-191-1/+17
|
* Replaces the workspace with 3 distinct registers: path, value and xregCharlie Stanton2023-04-192-28/+34
| | | | | | workspace contained a list of WalkItems, pairs of paths and values. The new system can still hold a list of values but only one path, which is in itself a list of values. The X register is miscellaneous. All 3 hold a list of values (which are JSON tokens)
* Adds parsing substitute commands, though executing them currently does nothingCharlie Stanton2023-04-194-5/+58
|
* Modify subex to take JSON split into "data"Charlie Stanton2023-02-221-13/+1
| | | | | | Currently no way to reassemble the data on the other side Much of the potential data cannot be interacted with meaningfully, only the string functionality is implemented Should rename data to something else
* Move JSON serialising, deserialising and walking code into a separate packageCharlie Stanton2023-02-196-381/+80
|
* Removes obsolete subex code from main/main.goCharlie Stanton2023-02-191-580/+0
|
* Introduces subex processingCharlie Stanton2023-02-191-4/+5
| | | | Doesn't integrate it at all yet
* Adds the or operator |Charlie Stanton2022-09-211-2/+34
|
* Implements the first version of subexCharlie Stanton2022-09-211-0/+564
|
* Adds some new commandsCharlie Stanton2022-09-214-16/+309
|
* Adds new filtersCharlie Stanton2022-08-273-41/+87
| | | | | | | | - Begin terminals - End terminals - All terminals - Negate - AND
* Adds a bunch of new path pattern featuresCharlie Stanton2022-08-264-44/+101
| | | | | | - Bracketting in expressions - OR with | - Optional with ?
* Refactors some stuff and adds lexing and parsingCharlie Stanton2022-08-268-123/+593
|
* Initial commitCharlie Stanton2022-08-235-0/+588
No parsing yet, but the execution is not bad Commands: - Print value - Toggle terminal (switch between array and map) - Filter command Filters: - Path filter Path filters are compiled from a regex like AST