Commit Graph

178 Commits

Author SHA1 Message Date
Kelvin Sherlock
9d5d3ca9e8 lemon left-hand-side optimizations 2016-08-05 10:34:05 -04:00
Kelvin Sherlock
5b343cc7dd use updated lemon++. 2016-08-05 10:25:17 -04:00
Kelvin Sherlock
56f945ce29 simplify argv0 lookup a little bit. 2016-07-28 16:30:17 -04:00
Kelvin Sherlock
b9782a0926 phase 1 -- escape nl in comment joins the line. 2016-07-28 15:26:37 -04:00
Kelvin Sherlock
ed341db9fa clean up error reporting. 2016-07-28 14:03:52 -04:00
Kelvin Sherlock
edcb832c13 fix up execution a little more 2016-07-28 13:58:13 -04:00
Kelvin Sherlock
c2c41f3a52 rewrite command execution to be more consistent with real mpw. 2016-07-28 13:44:00 -04:00
Kelvin Sherlock
413b9a805b tokenizer -- remove quotes as separate step, return clean command line. 2016-07-28 13:43:33 -04:00
Kelvin Sherlock
a2a48fcba7 echo is const. 2016-07-28 13:42:29 -04:00
Kelvin Sherlock
ad523f258e clean up errors a little bit. 2016-07-28 13:42:18 -04:00
Kelvin Sherlock
544f3a994c fix << evaluation. 2016-07-27 16:28:48 -04:00
Kelvin Sherlock
683b06b3b5 fix shell expansion -- retain "s 2016-07-27 16:28:28 -04:00
Kelvin Sherlock
9b16e98133 fix up tokenizer a little bit 2016-07-27 16:28:11 -04:00
Kelvin Sherlock
fe76877693 rewrite variable expansion, add initial support for ... command expansion. 2016-07-27 14:06:57 -04:00
Kelvin Sherlock
47af010ba5 mpw errors 2016-07-27 14:04:57 -04:00
Kelvin Sherlock
1a98acb756 update readme a little more. 2016-07-26 20:22:38 -04:00
Kelvin Sherlock
933f23de91 update readme. 2016-07-26 19:50:04 -04:00
Kelvin Sherlock
62612a10d3 white space. 2016-07-26 16:07:51 -04:00
Kelvin Sherlock
05f48c6a3c implement pipe. 2016-07-26 16:07:44 -04:00
Kelvin Sherlock
0524d10590 parse | pipe lines. 2016-07-26 14:20:11 -04:00
Kelvin Sherlock
2fdca6ea9d builtin_which -- also check builtin commands. 2016-07-24 21:21:15 -04:00
Kelvin Sherlock
9b577bdbb1 builtin catenate (builtin so cr/lf conversion blocked) 2016-07-23 23:50:28 -04:00
Kelvin Sherlock
84737e1cf7 use binary search for unicode -> macron. 2016-07-23 16:05:05 -04:00
Kelvin Sherlock
f97625eba7 fix comment. 2016-07-23 16:04:13 -04:00
Kelvin Sherlock
a366bbf2cb mpw-make - exit on error if {exit} 2016-07-23 15:29:53 -04:00
Kelvin Sherlock
76d5c9a474 smarter utf8/macroman 2016-07-23 15:29:22 -04:00
Kelvin Sherlock
db8e9af504 macroman / utf 8 conversions. 2016-07-23 15:21:13 -04:00
Kelvin Sherlock
fac76f1b54 shell tokenizer -- support extended characters. 2016-07-23 15:20:56 -04:00
Kelvin Sherlock
5c333cbedd -v doesn't take a parameter. 2016-07-23 15:20:24 -04:00
Kelvin Sherlock
34900a00b8 clean up must_quote a little bit, 2016-07-23 12:58:01 -04:00
Kelvin Sherlock
da92eb4e36 clean up tokenizer. 2016-07-23 12:50:38 -04:00
Kelvin Sherlock
c28cfb0710 rewrite phase-2 lexical analysis. It splits on ; ( ) || && and I've deferred the invalid string checks until later. 2016-07-23 11:54:46 -04:00
Kelvin Sherlock
31f33096cb ERROR terminal for parser. 2016-07-23 11:40:40 -04:00
Kelvin Sherlock
6d929aa87f convert utf8 input to macroman. 2016-07-21 15:14:27 -04:00
Kelvin Sherlock
80aaaa208d -f flag (don't load Startup file) 2016-07-21 11:48:41 -04:00
Kelvin Sherlock
fed90b3753 rewrite phase1 in C -- slightly strange processing is ugly in ragel.
Also move error checking for strings/variables until later.
2016-07-21 11:46:39 -04:00
Kelvin Sherlock
0ba9574d2d adjust cmakelist 2016-07-19 13:40:57 -04:00
Kelvin Sherlock
40a92c7976 remove old file 2016-07-19 13:40:46 -04:00
Kelvin Sherlock
5f9293a9e2 remove old files no longer in use. 2016-07-19 12:58:27 -04:00
Kelvin Sherlock
7984ccca54 travis - make no longer needs to be installed. 2016-07-19 12:47:38 -04:00
Kelvin Sherlock
42806cdd9b . 2016-07-19 12:37:25 -04:00
Kelvin Sherlock
686bee2578 proper -h help. 2016-07-19 12:37:12 -04:00
Kelvin Sherlock
adbf776d31 --shell support in MPW 2016-07-19 12:37:02 -04:00
Kelvin Sherlock
b4db751cbe fix parenthesis processing. left-paren is only a command when it's argv0. Otherwise it's a normal character. (but must be balanced with right-paren to know when right-paren is a separator. ). 2016-06-26 13:04:32 -04:00
Kelvin Sherlock
84b24e6379 more child signal stuff. 2016-06-24 14:37:33 -04:00
Kelvin Sherlock
e51e757556 re-set child signal handlers to default. 2016-06-24 14:30:27 -04:00
Kelvin Sherlock
bc2381a360 fix whitespace 2016-06-24 10:31:34 -04:00
Kelvin Sherlock
a44d2d3e4d user map for environment variables so they print in alphabetical order. 2016-06-22 13:48:26 -04:00
Kelvin Sherlock
45eade7af5 builtin_alias / builtin_unalias. 2016-06-22 13:48:05 -04:00
Kelvin Sherlock
6bfad57a35 offset_range 2016-06-22 13:46:19 -04:00