mirror of
https://github.com/ksherlock/mpw-shell.git
synced 2026-04-20 12:16:29 +00:00
f125b533f781c71c0132b8e76822009eddf02a22
commit f0944a89f27e44b1764988806e655f09764e80df Author: Kelvin Sherlock <ksherlock@gmail.com> Date: Tue Aug 30 12:24:08 2016 -0400 exit throws execution of input error w/ possible 0 value. catch it. commit 9e7f9c1ae049aa26513413f4767268b47ee22e98 Author: Kelvin Sherlock <ksherlock@gmail.com> Date: Tue Aug 30 12:23:21 2016 -0400 builtins - more consistent argument handling. commit be4c1c902f5a3a3f01e92ae52c7d6cc5d8731b65 Author: Kelvin Sherlock <ksherlock@gmail.com> Date: Tue Aug 30 12:23:01 2016 -0400 . commit 68d0c29fec112c6e7bc3a672b41eb7eb758a8941 Author: Kelvin Sherlock <ksherlock@gmail.com> Date: Tue Aug 30 12:22:51 2016 -0400 exit command. commit 25b0a7f7da9220b03026123bb5072c2da1d73fde Author: Kelvin Sherlock <ksherlock@gmail.com> Date: Tue Aug 30 12:21:16 2016 -0400 builtin quit command.
MPW Shell
MPW Shell is a re-implementation of the Macintosh Programmer's Workshop shell. The primary reason is to support MPW Make (which generated shell script). It may also be useful for other things.
Supported features
- If ... [Else If] ... [Else] ... End
- Begin ... End
- Loop ... End
- For name In [word...] ... End
- Break [If], Continue [If]
- ( ... )
- ||
- &&
- redirection
- | "pipes" (via a temporary file. Presumably, that's what MPW did as well.)
Not (yet) supported
- subshells (
...,...) - aliases
- regular expressions
- text-editing commands (search forward/backward, et cetera)
Builtin Commands
- AboutBox
- Alias
- Catenate
- Directory
- Echo
- Evaluate
- Exists
- Export
- Parameters
- Quote
- Set
- Shift
- Unalias
- Unexport
- Unset
- Version
- Which
Setup
- Install MPW. The mpw binary should be somewhere in your
$PATH. It also checks/usr/local/bin/mpwand$HOME/mpw/bin/mpw - Copy the
Startupscript to$HOME/mpw/. This script is executed when mpw-shell (or mpw-make) starts up (imagine that) and should be used to set environment variables.
Languages
C++
87.6%
Ragel
10.1%
CMake
1.7%
C
0.4%
Ruby
0.2%