Commit Graph

7 Commits

Author SHA1 Message Date
Kelvin Sherlock ce1a36eba5 add regular expression support for evaluate, if, etc.
eg:

evaluate abc =~ /(abc)®4/ # sets the '@4' environment variable.
evaluate abc !~ /[aA]bc/

MPW regular expressions are converted to c++11 std::regex regular expressions and evaluated.
Sadly, the // regular expression syntax interferes with unix-paths (if the / count is odd).  quoting or ∂-escaping the /s is therefore necessary.

file globbing is not yet implemented.
2022-11-22 17:22:49 -05:00
Kelvin Sherlock 5d95f10dd8 remove trailing newline from sub-shell strings. 2017-11-26 14:02:59 -05:00
Kelvin Sherlock 33dd3228f8 update the parser/lexer to make it more reusable. For example, subshells are now handled. 2016-08-16 16:47:20 -04:00
Kelvin Sherlock 683b06b3b5 fix shell expansion -- retain "s 2016-07-27 16:28:28 -04:00
Kelvin Sherlock fe76877693 rewrite variable expansion, add initial support for `...` command expansion. 2016-07-27 14:06:57 -04:00
Kelvin Sherlock 5723656988 lots of updates! 2016-02-01 20:38:29 -05:00
Kelvin Sherlock 7034e1193e initial version 2016-01-27 10:43:34 -05:00