extra stuff

This commit is contained in:
Kelvin Sherlock 2016-02-22 09:59:50 -05:00
parent 0d0367ca08
commit 56b0c93fd7
3 changed files with 167 additions and 0 deletions

42
README.md Normal file
View File

@ -0,0 +1,42 @@
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
* ( ... )
* ||
* &&
* redirection
Not supported
-------------
* pipes (|)
* subshells (`...`, ``...``)
* text-editing commands (search forward/backward, regular expressions, et cetera)
Builtin Commands
----------------
* Directory
* Echo
* Export
* Parameters
* Quote
* Set
* Unexport
* Unset
* Which
Setup
-----
1. Install MPW. The mpw binary should be somewhere in your `$PATH`.
It also checks `/usr/local/bin/mpw` and `$HOME/mpw/bin/mpw`
2. Copy the `Startup` script 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.

74
etc/MPW Shell.terminal Normal file
View File

@ -0,0 +1,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CharacterEncoding</key>
<integer>30</integer>
<key>CommandString</key>
<string>/usr/local/bin/mpw-shell</string>
<key>CursorBlink</key>
<true/>
<key>CursorType</key>
<integer>2</integer>
<key>Font</key>
<data>
YnBsaXN0MDDUAQIDBAUGGBlYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3AS
AAGGoKQHCBESVSRudWxs1AkKCwwNDg8QVk5TU2l6ZVhOU2ZGbGFnc1ZOU05hbWVWJGNs
YXNzI0AsAAAAAAAAEBCAAoADVk1vbmFjb9ITFBUWWiRjbGFzc25hbWVYJGNsYXNzZXNW
TlNGb250ohUXWE5TT2JqZWN0XxAPTlNLZXllZEFyY2hpdmVy0RobVHJvb3SAAQgRGiMt
Mjc8QktSW2JpcnR2eH+Ej5ifoqu9wMUAAAAAAAABAQAAAAAAAAAcAAAAAAAAAAAAAAAA
AAAAxw==
</data>
<key>FontAntialias</key>
<true/>
<key>ProfileCurrentVersion</key>
<real>2.04</real>
<key>RunCommandAsShell</key>
<true/>
<key>ShowRepresentedURLInTitle</key>
<false/>
<key>ShowRepresentedURLPathInTitle</key>
<false/>
<key>ShowShellCommandInTitle</key>
<false/>
<key>TextBoldColor</key>
<data>
YnBsaXN0MDDUAQIDBAUGFRZYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3AS
AAGGoKMHCA9VJG51bGzTCQoLDA0OVU5TUkdCXE5TQ29sb3JTcGFjZVYkY2xhc3NGMCAw
IDAAEAGAAtIQERITWiRjbGFzc25hbWVYJGNsYXNzZXNXTlNDb2xvcqISFFhOU09iamVj
dF8QD05TS2V5ZWRBcmNoaXZlctEXGFRyb290gAEIERojLTI3O0FITltiaWttcn2GjpGa
rK+0AAAAAAAAAQEAAAAAAAAAGQAAAAAAAAAAAAAAAAAAALY=
</data>
<key>TextColor</key>
<data>
YnBsaXN0MDDUAQIDBAUGFRZYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3AS
AAGGoKMHCA9VJG51bGzTCQoLDA0OVU5TUkdCXE5TQ29sb3JTcGFjZVYkY2xhc3NGMCAw
IDEAEAGAAtIQERITWiRjbGFzc25hbWVYJGNsYXNzZXNXTlNDb2xvcqISFFhOU09iamVj
dF8QD05TS2V5ZWRBcmNoaXZlctEXGFRyb290gAEIERojLTI3O0FITltiaWttcn2GjpGa
rK+0AAAAAAAAAQEAAAAAAAAAGQAAAAAAAAAAAAAAAAAAALY=
</data>
<key>columnCount</key>
<integer>100</integer>
<key>name</key>
<string>MPW Shell</string>
<key>noWarnProcesses</key>
<array>
<dict>
<key>ProcessName</key>
<string>screen</string>
</dict>
<dict>
<key>ProcessName</key>
<string>tmux</string>
</dict>
<dict>
<key>ProcessName</key>
<string>mpw-shell</string>
</dict>
</array>
<key>rowCount</key>
<integer>50</integer>
<key>type</key>
<string>Window Settings</string>
</dict>
</plist>

51
etc/Startup Normal file
View File

@ -0,0 +1,51 @@
# MPW Shell start up script.
# only built-in commands are executed.
#
# {MPW} is pre-defined.
if {MPWVersion}==""
set -e MPWVersion 3.5
end
set -e ShellDirectory "{MPW}{MPWVersion}:"
set -e Commands "{ShellDirectory}Tools:,{MPW}Tools:,:"
set -e SysTempFolder "/tmp/"
set -e TempFolder "/tmp/"
# MPW IIgs
set -e AIIGSIncludes "{MPW}Interfaces:AIIGSIncludes:"
set -e RIIGSIncludes "{MPW}Interfaces:RIIGSIncludes:"
set -e CIIGSIncludes "{MPW}Interfaces:CIIGSIncludes:"
set -e CIIGSLibraries "{MPW}Libraries:CIIGSLibraries:"
set -e PIIGSIncludes "{MPW}Interfaces:PIIGSIncludes:"
set -e PIIGSLibraries "{MPW}Libraries:PIIGSLibraries:"
# MPW Macintosh compilers
set -e SCIncludes "{ShellDirectory}:Interfaces:CIncludes:"
set -e CIncludes "{ShellDirectory}:Interfaces:CIncludes:"
set -e AIncludes "{ShellDirectory}Interfaces:AIncludes:"
set -e RIncludes "{ShellDirectory}Interfaces:RIncludes:"
set -e PInterfaces "{ShellDirectory}Interfaces:PInterfaces:"
set -e Libraries "{ShellDirectory}Libraries:Libraries:"
set -e PLibraries "{ShellDirectory}Libraries:PLibraries:"
set -e CLibraries "{ShellDirectory}Libraries:CLibraries:"
set -e PPCLibraries "{ShellDirectory}Libraries:PPCLibraries:"
set -e SharedLibraries "{ShellDirectory}Libraries:SharedLibraries:"
set -e CFM68KLibraries "{ShellDirectory}Libraries:CFM68KLibraries:"
#MetroWerks
set -e MW68KLibraries "{MPW}Libraries:MW68KLibraries:"
set -e MWPPCLibraries "{MPW}Libraries:MWPPCLibraries:"
set -e CWCIncludes "{MPW}Interfaces:CWCIncludes:"
set -e CWANSIIncludes "{MPW}Interfaces:CWANSIIncludes:"
set -e MWCIncludes "{CIncludes}"
#Newton Tools
set -e ARMCIncludes "{MPW}Interfaces:ARMCIncludes:"
set -e AsmMatOpts "-t 4"